Point cloud visualization method and device, electronic equipment and readable storage medium

By employing a server-side and client-side collaborative response architecture and LOD segmentation algorithm, combined with semantic segmentation and access control, the problem of balancing rendering performance and editing accuracy for massive 3D point cloud models was solved. This enabled efficient multi-user collaborative editing and dynamic rendering, improving system fluency and data integrity.

CN121350292BActive Publication Date: 2026-03-31SHENZHEN JIMUYIDA TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-12-18
Publication Date
2026-03-31

AI Technical Summary

Technical Problem

Existing 3D point cloud model processing technologies face a challenge in balancing rendering performance and editing accuracy when dealing with massive 3D point clouds with large spans. Static LOD models cannot be dynamically updated, leading to loss of accuracy in the editing area or over-rendering of non-editing areas. Furthermore, they lack the ability for multi-user collaborative editing.

Method used

It adopts a server-side and client-side collaborative response architecture, processes point cloud models through LOD segmentation algorithms, and realizes a hybrid loading method. It performs full loading within the specified editing area and dynamic LOD loading outside the editing area. It also introduces semantic segmentation and access control to support multi-user local high-precision editing and global low-precision browsing.

Benefits of technology

It achieves efficient organization and dynamic rendering of massive point cloud models, supports real-time collaborative editing by multiple users, ensures a balance between rendering performance and editing accuracy, and improves system fluency and data integrity.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121350292B_ABST
    Figure CN121350292B_ABST
Patent Text Reader

Abstract

The application provides a point cloud visualization method and device, electronic equipment and readable storage medium, and relates to the technical field of point cloud visualization. The database of the server comprises a plurality of point cloud models obtained by processing a target model by using an LOD segmentation algorithm, the client runs a 3D editor, and a model display interface of the 3D editor comprises a browsing window obtained by rendering the target model after dynamic loading by using the LOD. On the one hand, when there is an editing requirement, the client only needs to obtain high-precision point cloud data of a specified editing area from the server, and then performs hybrid loading in a preview window and full-quantity loading rendering in an editing window, so that global high-precision loading is avoided to save GPU resources, and balance between rendering performance and editing precision is achieved. On the other hand, in the editing mode, the content modified by the user is synchronized in the preview window and the editing window of the model display interface, which is convenient for checking and comparing, and the coexistence of the preview mode and the local editing mode is achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of point cloud visualization technology, and more specifically, to a point cloud visualization method, apparatus, electronic device, and readable storage medium. Background Technology

[0002] With the rapid development of digital technology, the application scenarios of 3D point clouds have expanded from early single objects or small-scale scenes to massive model scenarios such as city-level building complexes and large-scale infrastructure (such as roads and bridges). In these scenarios, the number of point clouds in the model often reaches hundreds of thousands to millions, and the total data volume exceeds TB.

[0003] Point cloud data, particularly that involving urban roads, presents significant challenges in both its management and application due to its massive quantity and spatial span. Furthermore, real-world business applications often require multiple users to perform real-time modifications, attribute annotations, and component adjustments on the point cloud model. This places extremely high demands on the system's storage capacity, processing efficiency, real-time rendering smoothness, and multi-user collaboration capabilities.

[0004] However, existing 3D point cloud model processing technologies rely heavily on pre-generated static Level of Detail (LOD) models when dealing with massive 3D point clouds spanning large areas. While this improves rendering efficiency during browsing, the fixed LOD structure cannot be dynamically updated with editing operations. When users perform local editing on the model (such as modifying component dimensions or adding attachments), static LOD often leads to a loss of precision in the designated editing area, or over-rendering due to high detail remaining in non-designated editing areas. Furthermore, some systems, to ensure editing accuracy, have to force the loading of the full high-precision model, causing a sharp increase in GPU load and a frame rate drop below 10fps, severely compromising the real-time performance and smoothness of editing operations, and even interrupting interactive work. In other words, existing technologies face a challenge in balancing rendering performance and editing accuracy. Summary of the Invention

[0005] The purpose of this invention is to provide a point cloud visualization method, apparatus, electronic device, and readable storage medium to improve the problems existing in the prior art.

[0006] The embodiments of the present invention can be implemented as follows:

[0007] In a first aspect, the present invention provides a point cloud visualization method applied to a server, wherein the server is communicatively connected to a client, the server's database includes multiple point cloud models obtained by processing a target model using a LOD segmentation algorithm, and the client runs a 3D editor, the 3D editor's model display interface including a browsing window rendered from the target model after dynamic LOD loading; the method includes:

[0008] When an edit request is received from the client, high-precision point cloud data within the specified editing area is retrieved from the database based on the edit request. The edit request is generated by the client based on user identity information, camera field of view data, the specified editing area, and the specified point cloud type when the client senses the user's edit operation in the browsing window.

[0009] The high-precision point cloud data is returned to the client, so that the client stores the high-precision point cloud data in a local cache and renders the preview window of the model display interface using a hybrid loading method and renders the editing window of the model display interface using a full loading method; the hybrid loading method is: fully loading the high-precision point cloud data within the specified editing area and dynamically loading the point cloud at LOD outside the specified editing area.

[0010] When a modification request is received from the client, modification processing is performed based on the modification request, and the modification result is returned to the client so that the client can confirm that the modification has taken effect or rollback based on the modification result;

[0011] The modification request is generated by the client when it detects the user's modification operation in the editing window. Based on the user's submitted modification request, the client modifies the locally cached high-precision point cloud data and synchronously renders and updates the preview window and the editing window. The modification request is then generated based on the specified editing area, the user's identity information, and the modification request.

[0012] Secondly, this invention provides a point cloud visualization method applied to a client, wherein the client communicates with a server, the client runs a 3D editor, the model display interface of the 3D editor includes a browsing window rendered from a target model after dynamic loading of LOD (Level of Detail), and the server's database includes multiple point cloud models obtained by processing the target model using an LOD segmentation algorithm; the method includes:

[0013] When the user's editing operation in the browsing window is detected, an editing request is generated based on the user's identity information, camera field of view data, the user-defined specified editing area and specified point cloud type, and the editing request is sent to the server so that the server can retrieve high-precision point cloud data within the specified editing area from the database based on the editing request;

[0014] Upon receiving the high-precision point cloud data returned by the server, the high-precision point cloud data is stored in the local cache and loaded in the preview window of the model display interface using a hybrid loading method and in the rendering and editing window of the model display interface using a full loading method. The hybrid loading method is: the high-precision point cloud data is fully loaded within the specified editing area and the point cloud is dynamically loaded at LOD outside the specified editing area.

[0015] When a user's modification operation is detected in the editing window, the high-precision point cloud data cached locally is modified based on the modification request submitted by the user, and the preview window and the editing window are synchronously rendered and updated. Then, a modification request is generated based on the specified editing area, the user's identity information and the modification request, and the modification request is sent to the server so that the server can perform modification processing based on the modification request.

[0016] Receive the modification result returned by the server, and confirm whether the modification takes effect or is rolled back based on the modification result.

[0017] Thirdly, the present invention provides a point cloud visualization device applied to a server, wherein the server is communicatively connected to a client, the server's database includes multiple point cloud models obtained by processing a target model using a LOD segmentation algorithm, the client runs a 3D editor, and the 3D editor's model display interface includes a browsing window rendered from the target model after dynamic LOD loading; the device includes:

[0018] The editing response module is used to retrieve high-precision point cloud data within a specified editing area from the database based on the editing request when it receives an editing request from the client. The editing request is generated by the client based on user identity information, camera field of view data, the specified editing area, and the specified point cloud type when it senses the user's editing operation in the browsing window.

[0019] The editing response module is also used to return the high-precision point cloud data to the client, so that the client stores the high-precision point cloud data in the local cache and renders the preview window of the model display interface using a hybrid loading method and renders the editing window of the model display interface using a full loading method; the hybrid loading method is: fully loading the high-precision point cloud data within the specified editing area and dynamically loading the point cloud at LOD outside the specified editing area;

[0020] The modification response module is used to perform modification processing based on the modification request sent by the client when it receives the modification request, and return the modification result to the client so that the client can confirm the modification takes effect or roll back based on the modification result;

[0021] The modification request is generated by the client when it detects the user's modification operation in the editing window. Based on the user's submitted modification request, the client modifies the locally cached high-precision point cloud data and synchronously renders and updates the preview window and the editing window. The modification request is then generated based on the specified editing area, the user's identity information, and the modification request.

[0022] Fourthly, the present invention provides a point cloud visualization device applied to a client, wherein the client is communicatively connected to a server, the client runs a 3D editor, the model display interface of the 3D editor includes a browsing window rendered after the target model is dynamically loaded using LOD, and the database of the server includes multiple point cloud models obtained by processing the target model using an LOD segmentation algorithm; the device includes:

[0023] The edit request module is used to generate an edit request based on user identity information, camera field of view data, user-defined specified edit area and specified point cloud type when the user's edit operation is detected in the browsing window, and send the edit request to the server so that the server can retrieve high-precision point cloud data within the specified edit area from the database based on the edit request;

[0024] The dual-window rendering module is used to store the high-precision point cloud data in a local cache when it receives the high-precision point cloud data returned by the server, and to render the preview window of the model display interface using a hybrid loading method and the editing window of the model display interface using a full loading method. The hybrid loading method is: to fully load the high-precision point cloud data within the specified editing area and to dynamically load the point cloud data at LOD outside the specified editing area.

[0025] The modification request module is used to modify the locally cached high-precision point cloud data based on the modification request submitted by the user when the user's modification operation is detected in the editing window, and to synchronously render and update the preview window and the editing window. Then, it generates a modification request based on the specified editing area, the user's identity information and the modification request, and sends the modification request to the server so that the server can perform modification processing based on the modification request.

[0026] The modification confirmation module is used to receive the modification result returned by the server and confirm whether the modification takes effect or is rolled back based on the modification result.

[0027] Fifthly, the present invention provides an electronic device, comprising: a memory and a processor, wherein the memory stores a software program, and when the electronic device is running, the processor executes the software program to implement the point cloud visualization method as described in the first or second aspect above.

[0028] In a sixth aspect, the present invention provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the point cloud visualization method described in the first or second aspect above.

[0029] Compared with existing technologies, embodiments of the present invention provide a point cloud visualization method, apparatus, electronic device, and readable storage medium. The server-side database includes multiple point cloud models obtained by processing the target model using a LOD segmentation algorithm. The client runs a 3D editor, and the model display interface of the 3D editor includes a browsing window rendered from the target model after dynamic LOD loading. Its beneficial effects are:

[0030] On one hand, when a user performs an editing operation, the client generates an editing request based on the user's identity information, camera field of view data, the user-defined editing area, and the specified point cloud type, and sends it to the server. The server then retrieves the high-precision point cloud data within the specified editing area and returns it. The client then stores the high-precision point cloud data in its local cache and renders the preview window in the model display interface using a hybrid loading method, and the editing window in the model display interface using a full loading method. The hybrid loading method involves fully loading the high-precision point cloud data within the specified editing area and dynamically loading the point cloud data at LOD (Level of Detail) outside the specified editing area. This allows the client to support the coexistence of the preview and editing windows when editing is needed, thus avoiding global high-precision loading to save GPU resources and achieving a balance between rendering performance and editing precision.

[0031] On the other hand, in edit mode, when a user makes modifications, the client modifies the locally cached high-precision point cloud data based on the user's submitted modification requests and synchronously renders and updates the preview and edit windows. Then, it generates a modification request based on the specified editing area, user identity information, and modification requirements. The server then processes the modification request and returns the modified result to the client, allowing the client to confirm the changes taking effect or revert them. In this way, the user's modifications are synchronized in both the preview and edit windows of the model display interface, facilitating comparison and enabling the coexistence of preview mode and partial editing mode. Attached Figure Description

[0032] To more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings used in the embodiments will be briefly introduced below. It should be understood that the following drawings only show some embodiments of the present invention and should not be regarded as a limitation on the scope. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.

[0033] Figure 1 This is one of the flowcharts illustrating a point cloud visualization method provided in an embodiment of the present invention.

[0034] Figure 2 This is a schematic diagram of an interactive scenario provided in an embodiment of the present invention.

[0035] Figure 3 This is a schematic diagram of the initial point browsing window provided in an embodiment of the present invention.

[0036] Figure 4 This is a browsing window after the user performs a zoom operation, as provided in an embodiment of the present invention.

[0037] Figure 5 This is a schematic diagram illustrating the coexistence of a preview window and an editing window as provided in an embodiment of the present invention.

[0038] Figure 6 This is a second flowchart illustrating a point cloud visualization method provided in an embodiment of the present invention.

[0039] Figure 7 This is one of the structural schematic diagrams of a point cloud visualization device provided in an embodiment of the present invention.

[0040] Figure 8 This is a second schematic diagram of the structure of a point cloud visualization device provided in an embodiment of the present invention.

[0041] Figure 9 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present invention. Detailed Implementation

[0042] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. The components of the embodiments of the present invention described and shown in the accompanying drawings can generally be arranged and designed in various different configurations.

[0043] Therefore, the following detailed description of the embodiments of the invention provided in the accompanying drawings is not intended to limit the scope of the claimed invention, but merely to illustrate selected embodiments of the invention. All other embodiments obtained by those skilled in the art based on the embodiments of the invention without inventive effort are within the scope of protection of the invention.

[0044] It should be noted that similar labels and letters in the following figures indicate similar items. Therefore, once an item is defined in one figure, it does not need to be further defined and explained in subsequent figures.

[0045] Furthermore, the terms "first" and "second" are used only to distinguish descriptions and should not be interpreted as indicating or implying relative importance.

[0046] It should be noted that, where there is no conflict, the features in the embodiments of the present invention can be combined with each other.

[0047] Existing 3D point cloud model processing technologies have the following limitations when dealing with massive 3D point clouds spanning large distances:

[0048] First, the organization and loading of massive point cloud models is inefficient. Traditional 3D point cloud systems often use static storage methods based on simple spatial partitioning, lacking deep association between the geometric features and semantic attributes of the model (such as "building-floor-component type", "equipment-model-assembly relationship"). This results in the retrieval and localization of models with more than 100,000 elements taking up to seconds, and "lag timeouts" frequently occurring during full-scene loading, further reducing the system's response speed. This is especially problematic for large-span point cloud models like roads.

[0049] Secondly, there is the challenge of balancing rendering and editing performance. Current technologies often rely on pre-generated multi-level Level of Detail (LOD) models for large-scale scene rendering. However, these LODs are mostly statically generated and only suitable for browsing and publishing scenes. When users edit the model (e.g., modifying dimensions or adding parts), the static LOD cannot be updated in real time, easily leading to contradictions such as "loss of precision in the editing area" or "over-rendering of non-editing areas." Some systems, in order to ensure editing accuracy, force the loading of the full high-precision model, which in turn causes excessive GPU load, resulting in a frame rate drop below 10fps, severely impacting the smoothness of editing operations and potentially rendering editing interactions impossible.

[0050] Third, editing and rendering are difficult to coexist. LOD rendering can solve the rendering lag problem by using asynchronous partial data loading, but editing mode requires partial full data loading, which leads to a conflict between the two modes and makes them difficult to coexist.

[0051] Fourth, the multi-user collaborative editing capabilities are insufficient. Existing collaborative editing tools (such as BIM collaborative platforms) are mostly designed for small-to-medium-scale models (less than a thousand components) and adopt "full model synchronization" or "simple version lock" mechanisms: the former, in scenarios with massive models, has a data transmission volume of MB for a single editing operation and a synchronization delay of over 100ms, which cannot support real-time interaction; the latter, due to the lack of determination of the correlation of editing operations (such as "modifying the pipe length requires simultaneous adjustment of the connecting flange position"), is prone to parameter conflicts and cannot realize parallel editing of different model segments by multiple users, thus greatly limiting collaborative efficiency.

[0052] In summary, there is an urgent need for an integrated technical solution that can efficiently organize massive point cloud models, dynamically optimize rendering, and enable real-time collaborative editing, in order to break through existing technical bottlenecks and meet the practical needs of digital twins, smart cities, and other fields for rapid processing of massive 3D models.

[0053] Based on the discovery of the aforementioned technical problems, the inventors, through creative labor, proposed the following technical solutions to solve or improve these problems. It should be noted that the deficiencies in the solutions of the prior art are all results derived by the inventors after practical experience and careful research. Therefore, the discovery process of the aforementioned problems and the solutions proposed in the embodiments of this application below should be considered contributions made by the inventors to this application during the inventive process, and should not be construed as technical content known to those skilled in the art.

[0054] The point cloud visualization method provided in this invention involves a client-server communication connection. The server's database can include multiple 3D models uploaded by users through the client, each containing multiple point cloud models obtained by processing each 3D model using a LOD segmentation algorithm. The client runs a 3D editor. This invention, through a collaborative response architecture between the server and client, enables users to browse and edit target models containing a large number of point clouds on the client using a 3D editor.

[0055] Taking the visualization and interaction process of any target model among all 3D models in the database as an example, the implementation logic of the point cloud visualization method provided by this invention will be introduced from both the server and client sides below.

[0056] Please see Figure 1 , Figure 1 This is a flowchart illustrating a point cloud visualization method provided in an embodiment of the present invention. The execution entity of this method can be the aforementioned server, and the model display interface of the 3D editor includes a browsing window rendered after the target model is dynamically loaded and rendered using LOD (Level of Detail). Figure 1 The point cloud visualization method includes the following steps S303~S305.

[0057] S303. When an edit request is received from the client, high-precision point cloud data within the specified editing area is retrieved from the database based on the edit request.

[0058] In this embodiment, the edit request is generated by the client based on user identity information, camera field of view data, a specified editing area, and a specified point cloud type when the client detects the user's editing operation in the browsing window. Therefore, the server can accurately retrieve high-precision point cloud data that is located within the specified editing area and meets the type and permission requirements from various data of the target model in the database based on the parameters in the received edit request.

[0059] S304. Return the high-precision point cloud data to the client so that the client can store the high-precision point cloud data in the local cache and render the preview window in the model display interface using a hybrid loading method and render the editing window in the model display interface using a full loading method.

[0060] In this embodiment, the server returns the found high-precision point cloud data to the client. This ensures that when the user has editing needs, only local high-precision data directly related to the current editing task is transmitted, avoiding the waste of resources caused by the client loading the full data.

[0061] After receiving high-precision point cloud data, the client stores it in a local cache. The model display interface then immediately switches to a dual-window mode: a preview window is rendered using a hybrid loading method, while an editing window is rendered using a full loading method. The hybrid loading method involves fully loading the high-precision point cloud data within a specified editing area and dynamically loading the previously acquired multi-level point cloud data (LOD) outside that area. This allows both the preview and editing windows to reproduce the spatial structure and attribute characteristics of the point cloud within the editing area at high resolution, providing users with a refined operating experience with millisecond-level response capabilities. However, in the preview window, areas outside the editing area still use LOD dynamic loading to avoid wasting rendering resources.

[0062] It is understandable that an edit request is simply the client requesting editing permissions and high-precision point cloud data to be edited from the server, and does not involve any specific modifications.

[0063] S305. When a modification request is received from the client, the modification process is performed based on the modification request, and the modification result is returned to the client so that the client can confirm that the modification has taken effect or rollback based on the modification result.

[0064] In this embodiment, the modification request is generated by the client when it senses the user's modification operation in the editing window. Based on the user's submitted modification request, the client modifies the locally cached high-precision point cloud data and synchronously renders and updates the preview window and the editing window. The modification request is then generated based on the specified editing area, user identity information, and modification request.

[0065] In other words, within the locally high-precision loading editing window, users can perform corresponding modification operations (such as resizing, adding parts, modifying attributes, rotating, moving, deleting, etc.). After the user completes the modification operation and submits it, the client will first make local modifications according to the user's submitted modification requirements, and simultaneously render and update the preview window and editing window based on the locally modified point cloud data. Then, based on the specified editing area, user identity information, and modification requirements, a modification request will be generated and sent to the server.

[0066] The modification request reflects the modification operation to be performed on the point cloud object selected by the user, such as deleting the noisy point cloud with point cloud ID 001, or moving the point cloud with point cloud ID 012. It should be noted that this example is only for illustration, and the present invention does not limit the number of point clouds in each modification request.

[0067] Upon receiving the modification request, the server, based on the specified editing area, user identity information, and specific modification requirements, performs corresponding modifications to the data in the database. After processing, the server returns the modification result to the client, indicating whether the modification was successful. The client then uses this result to decide whether to officially apply the changes in its local cache, or, if the modification fails, revert to the previous state and re-render the preview and editing windows to their previous state, ensuring data consistency and operational reliability.

[0068] The point cloud visualization method provided in this invention introduces a closed-loop process of "extracting data according to editing requests—returning local high-precision data—supporting independent editing by the client—verifying modifications by the server," enabling rapid access and secure editing of local areas in massive point cloud models. This mechanism simultaneously realizes both low-precision global browsing and high-precision local editing on the same model display interface, ensuring overall system smoothness while meeting the dual requirements of data integrity and real-time operation for complex interactive tasks. In practical applications, it is particularly suitable for multi-role collaborative design and dynamic update tasks in large-scale 3D scenes such as roads, bridges, and industrial parks.

[0069] In the visualization and interactive application of massive 3D point cloud data, the efficiency and intelligent data scheduling and rendering control depend directly on the server's organization of the original model and its semantic modeling capabilities. Traditional point cloud processing workflows typically manage data in blocks based solely on spatial geometry, lacking effective integration of non-geometric attributes such as type characteristics and access permissions. This makes it difficult for the system to dynamically adjust its data supply strategy when facing multiple users and diverse access needs.

[0070] To address this issue, this invention introduces a preprocessing mechanism on the server side that incorporates the LOD segmentation algorithm. The aim is to construct a basic data system that supports fine-grained access control and visual priority-driven loading by performing structured parsing and parameter annotation on the uploaded target model.

[0071] The following section uses the upload of a target model as an example to describe the preprocessing process of the target model on the server side. This preprocessing process may include steps S101 to S106.

[0072] S101, Receive the target model uploaded by the client.

[0073] The target model is an unprocessed set of raw 3D point clouds, containing a large number of discrete point clouds and their basic coordinate and attribute information.

[0074] S102. Determine the type and permission attributes of each point cloud in the target model.

[0075] In this embodiment, after receiving the target model, the server first performs the attribute annotation step, that is, determines the type attribute and permission attribute of each point cloud in the target model.

[0076] Optionally, attribute annotation can be achieved by performing semantic segmentation algorithms on the target model. For example, deep learning models (such as PointNet, PointCNN, etc.) can be used to perform semantic segmentation on large-scale point clouds to achieve point-by-point classification and identify point sets belonging to specific categories such as walls, beams, columns, pipes, and equipment. In this way, semantic segmentation technology can be used to automatically infer the type attributes of each point cloud, thereby reducing the cost of manual annotation and improving preprocessing efficiency.

[0077] Therefore, the type attribute of a point cloud is used to characterize the semantic category to which the point cloud belongs, such as building components, structural beams and columns, electromechanical equipment, vehicles, roads, pipelines, etc.

[0078] It should be noted that this embodiment does not limit attribute annotation to a specific technical path. Semantic segmentation is only one feasible way to assign type attributes, not the only way. In practical applications, type attributes can also come from the metadata import of the target model during the modeling phase (such as the IFC tags attached when exporting a BIM model), or be manually annotated by the user before uploading. Similarly, permission attributes are usually determined by project management strategies and are often set based on non-spatial factors such as organizational roles and job responsibilities. They are generally assigned through configuration files or permission management systems and do not rely on semantic segmentation technology.

[0079] Optionally, the permission attributes of point clouds can be set based on a unified security policy model. For example, the system can predefine three basic states: "viewable", "editable" and "invisible", and map the corresponding permissions to specific point cloud objects according to the user's role group (such as administrator, designer, visitor) or the authorization scope of a specific task. This can provide a basis for decision-making for subsequent secure access and differentiated rendering.

[0080] S103. The target model is spatially divided into blocks using the LOD segmentation algorithm to obtain multiple point cloud blocks corresponding to each LOD level.

[0081] In this embodiment, the server uses a Level of Detail (LOD) segmentation algorithm to spatially divide the target model. This LOD segmentation algorithm recursively decomposes the entire target model into multiple levels of point cloud blocks according to preset spatial partitioning rules (such as an octree structure). After this processing, multiple point cloud blocks corresponding to each LOD level are obtained. All point cloud blocks of an LOD level constitute a complete point cloud model under that level, forming a hierarchical storage structure.

[0082] Each LOD level's point cloud block is a sparse point cloud obtained by sampling the target model. Each LOD level corresponds to a different level of data granularity, from LOD0 to LODn. The higher the level, the greater the point cloud density and the richer the details. At the same spatial location, if there is only a LOD0 point cloud block, the displayed point cloud resolution is the lowest. If more LOD levels are superimposed on LOD0, the point cloud resolution is higher and the display effect is more refined.

[0083] S104. For each point cloud in each point cloud block, find the basic pixel threshold, type adjustment threshold, and precision adjustment threshold that match the LOD level, type attribute, and permission attribute of the point cloud from the preset basic mapping table, type mapping table, and permission mapping table respectively.

[0084] In this embodiment, the server maintains a preset basic mapping table, a type mapping table, and a permission mapping table.

[0085] The base mapping table can include a preset base pixel threshold Mc for each LOD level. It can be understood that as the LOD level increases (from LOD0 to LODn), the spatial detail of the point cloud model gradually becomes richer, and the pixel size of a single point cloud in screen rendering also increases. Therefore, higher-level point cloud blocks occupy a larger pixel area after rendering, hence the higher the LOD level, the larger the corresponding preset base pixel threshold should be. This base mapping table provides an initial benchmark for subsequently determining whether a point cloud meets the renderable conditions.

[0086] For example, LOD0, as the coarsest overall model representation, has a lower base pixel threshold setting Mc, for example, LOD level = LOD0, Mc = 10; while LOD1 or LOD2, or even larger LOD levels, contain denser sampled point clouds and have more significant imaging at the same viewing distance, so their preset base pixel threshold is set to a higher value, for example: LOD level = LOD1, Mc = 20; LOD level = LOD2, Mc = 40, and so on.

[0087] The type mapping table can include preset type adjustment thresholds T1 for various types. Its setting logic is related to the complexity of the object's surface structure. For example, point clouds of electromechanical equipment typically contain many detailed components (such as pipe bends, valves, and cable supports), with complex surface topology, requiring higher precision for display to ensure recognizability; therefore, the corresponding preset type adjustment threshold is higher. In contrast, simple building components such as walls or floors have relatively flat surfaces and low information density, requiring relatively lower rendering detail; therefore, the preset type adjustment threshold is smaller. Through this mapping mechanism, the system can prioritize the display precision of highly complex objects at the same LOD level. For example, electromechanical equipment (T1=10), walls, or floors (T1=10).

[0088] The permission mapping table includes precision adjustment thresholds T2 corresponding to three permission attributes: "viewable," "editable," and "invisible." These thresholds are used to adjust the granularity of the data that users with different permissions can obtain. The "editable" permission indicates that the user has the ability to modify the data, and a higher precision adjustment threshold should be set accordingly. The "viewable" permission only allows browsing, and the loading granularity can be appropriately reduced while ensuring basic visibility, i.e., a medium precision adjustment threshold should be set. The "invisible" permission directly suppresses data return, and its precision adjustment threshold can be set to zero or a negative value to ensure that this part of the point cloud does not participate in any rendering process.

[0089] Therefore, the server can find the basic pixel threshold, type adjustment threshold, and precision adjustment threshold that match each point cloud.

[0090] S105. Calculate the weighted sum of the type adjustment threshold and the precision adjustment threshold for the point cloud to obtain the comprehensive adjustment threshold. Then, add the basic pixel threshold of the point cloud to the comprehensive adjustment threshold to obtain the single-point pixel threshold of the point cloud. S106. Calculate the average of all single-point size thresholds corresponding to each point cloud block to obtain the comprehensive pixel threshold for each point cloud block.

[0091] In this embodiment, it is assumed that a point cloud block includes M point clouds. For the i-th point cloud, based on the basic pixel threshold Mc, type adjustment threshold T1, and precision adjustment threshold T2 of the point cloud, the single-point pixel threshold of the point cloud is... for: =Mc + α*T1 + (1-α)*T2, where α is the weighting coefficient. The comprehensive pixel threshold for this point cloud block... for: .

[0092] Thus, the overall pixel threshold of a point cloud block reflects the minimum pixel size occupied by the block after rendering, and must satisfy the hierarchical progression constraint: the overall pixel threshold of a point cloud block in one LOD level is less than the overall pixel threshold of a point cloud block in the next LOD level. The overall pixel threshold, as a holistic metric, measures whether a point cloud block possesses sufficient visual saliency under the current viewpoint conditions to trigger a loading action, thereby supporting subsequent dynamic data filtering logic based on camera field of view and user permissions.

[0093] The server stores the comprehensive pixel threshold of each point cloud block in the target point cloud into the database, and also stores the type and permission attributes of each point cloud into the unstructured information of that point cloud in the database. For further details, please refer to [link to relevant documentation]. Figure 2 , Figure 2 This is a schematic diagram of an interactive scenario provided by an embodiment of the present invention. Assume user A uploads the target model to the server via a client. After preprocessing the target model, the server can obtain the following... Figure 2 The octree structure shown is Figure 2 Each ○ symbol node in the octree represents a point cloud block. Each point cloud in each block contains unstructured information about point objects. The database stores the comprehensive pixel threshold for each point cloud block.

[0094] After the server preprocesses the target model, user A or other users can browse and modify the target model through interaction between the client and the server.

[0095] When a user browses the target point cloud model, the point cloud visualization method may also include the following steps S301~S302.

[0096] S301. When a browsing request is received from the client, multi-level point cloud data is retrieved from the database based on the browsing request.

[0097] In this embodiment, the multi-level point cloud data retrieved by the server may include point cloud data from at least one point cloud model, that is, it may include point clouds at multiple LOD levels. The browsing request is generated by the client based on user identity information and camera field-of-view data when the client detects a user's browsing operation on the target model.

[0098] For example, when the 3D editor displays a model list interface (including the project name or project ID of the target model), the browsing operation can be a user's selection, clicking, or double-clicking operation on the target model in the model list interface. In this way, the client will generate a browsing request based on the user's identity information and the default camera field of view data of the first visit / the camera field of view data of the last visit and send it to the server to request multi-layer point cloud data.

[0099] For example, when the 3D editor displays the model display interface and the browsing window displays the global or local view of the target model, the browsing operation can be the user's zoom operation or view change operation on the target point cloud model in the browsing window (such as switching between eight views such as up, down, left, right, forward, and backward through the view switching buttons in the window). At this time, the client can generate a browsing request based on the user's identity information and the latest camera field of view data triggered by the current browsing operation and send it to the server to request multi-level point cloud data.

[0100] S302. Return the multi-level point cloud data to the client so that the client can perform hierarchical rendering in the browsing window based on the multi-level point cloud data using the LOD dynamic loading method.

[0101] In this embodiment, after receiving the data, the client can perform hierarchical rendering operations in the browsing window based on the spatial distribution of the multi-level point cloud data and the LOD levels involved. That is, it prioritizes displaying the near-field area with higher point cloud resolution, while presenting the distant part with lower point cloud resolution, thereby achieving a balance between visual quality and performance consumption.

[0102] For example, suppose the browsing window displays the global view of the target model (which may only show point cloud blocks at LOD0 level). When the user zooms in, the client obtains multi-level point cloud data within the camera's field of view. In the latest browsing window rendered based on this, the multi-level point clouds within the camera's field of view are superimposed and displayed. At the center of the camera's field of view, all LOD levels in the multi-level point cloud data are superimposed and displayed, resulting in the highest display accuracy. As the view expands outward from the center of the camera's field of view, the number of superimposed LOD levels gradually decreases, and the display accuracy gradually decreases.

[0103] For example, in a city-level digital twin platform, users can view the laser scan results of a section of a city road through a browser. For instance, when a user views it for the first time, the browser window might look like this: Figure 3 As shown, Figure 3 The top-down global view is shown in the middle for the initial viewing, so the point cloud is very sparse. When the user performs a zoom operation (such as zooming using the Ctrl key combined with mouse scrolling), the browsing window can expand from... Figure 3 Become Figure 4 . Figure 4 In the middle region, the point cloud is dense and has a high resolution, while the point cloud in the outer surrounding region is sparse and has a low resolution. This hierarchical rendering reduces rendering resource consumption and improves rendering efficiency during browsing.

[0104] In step S301 above, the process of searching for multi-level point cloud data integrates a search mechanism that combines access control, field of view awareness, and pixel scale judgment to finely filter multi-level point cloud data that meets browsing conditions. That is, the implementation of step S301 can include steps a1 to a7.

[0105] Step a1: Parse the browsing request to obtain user identity information and camera field of view data.

[0106] In this embodiment, user identity information may include user ID and user role (such as administrator, engineer, visitor). Camera field of view data may include, but is not limited to, camera position, orientation, camera distance (i.e., the distance between the camera position and the virtual imaging center), field of view angle, front and rear clipping planes, and screen pixel height. It can be understood that the camera here is a virtual camera with a 3D roaming perspective.

[0107] Step a2: Read user permissions from the permission data in the database based on user identity information.

[0108] Step a3: If the user's permissions include browsing permissions, then determine the field of view spatial range based on the camera's field of view data.

[0109] In this embodiment, the field of view spatial range represents the actual observable spatial area in a three-dimensional scene, and is usually determined by the camera position, orientation, field of view angle, and front and rear clipping planes.

[0110] Step a4: From all point cloud blocks, select each undetermined point cloud block that overlaps with the field of view spatial range.

[0111] Based on the field of view, point cloud blocks that spatially overlap with the target point cloud are first selected from all point cloud blocks. These selected point cloud blocks may belong to different layers. This initial selection process effectively narrows the search range for subsequent calculations and avoids invalid processing of point cloud blocks far from the field of view.

[0112] Step a5: For each undetermined point cloud block, based on the spatial radius of the minimum circumscribed sphere of the point cloud block, the camera position in the camera field of view data, the vertical field of view angle, and the screen pixel height, determine the actual pixel diameter required for the minimum circumscribed sphere of the point cloud block.

[0113] In this embodiment, the actual pixel diameter can be obtained by combining the spatial diameter of the minimum circumscribed sphere of the point cloud block and the camera view data. For example, the formula for calculating the actual pixel diameter of a point cloud block can be:

[0114]

[0115] in, Let be the spatial radius of the smallest circumscribed sphere of the point cloud. For screen pixel height, Let be the straight-line distance between the camera position and the center of the smallest circumsphere of the cloud patch at that point. The projection coefficient is determined by the camera's vertical field of view. The pixel diameter calculation simulates the projected size of the point cloud block in screen space, reflecting its recognizability when displayed on the terminal.

[0116] Step a6: From all undetermined point cloud blocks, select each target point cloud block whose actual pixel diameter is greater than the comprehensive pixel threshold.

[0117] Only target point cloud blocks with actual pixel diameters greater than the overall pixel threshold are retained. This ensures that only point cloud blocks with sufficient visual expressiveness are included in the final dataset, avoiding bandwidth waste due to transmitting too small or invisible point clouds.

[0118] Step a7: From all target point cloud blocks, select each point cloud that meets the first condition to obtain multi-level point cloud data.

[0119] In this embodiment, the first condition includes being located within the field of view and having the permission attribute of "viewable" or "editable". That is, the first condition has two dimensions: a spatial dimension, meaning the point cloud must be located within the field of view determined in step a3; and a permission dimension, meaning the point cloud's permission attribute must be "viewable" or "editable". Only point clouds that simultaneously meet both conditions are included in the final returned multi-level point cloud data.

[0120] Through steps a1 to a7, a multi-dimensional filtering mechanism is used to connect three key stages: permission verification, spatial visibility analysis, and pixel scale judgment. This ensures that the data search process not only responds to changes in the user's physical perspective but also dynamically adapts to their identity permissions and the terminal's rendering capabilities. By introducing a comprehensive pixel threshold as a quantitative indicator, pre-assessment of rendering effectiveness is achieved, improving search efficiency.

[0121] The implementation process of "finding high-precision point cloud data within a specified editing area from the database based on the editing request" in step S303 above may include the following steps b1 to b4.

[0122] Step b1: Parse the edit request to obtain user identity information, camera field of view data, specified editing area, and specified point cloud type.

[0123] The server first parses the editing request and extracts several key parameters, including user identity information, camera field of view data, specified editing area, and specified point cloud type.

[0124] Step b2: Obtain user permissions related to user identity information.

[0125] Optional, combined Figure 2 In the database, the permission data can include browsing permission sets and editing permission sets corresponding to different user roles. The browsing permission set includes various type attributes that support browsing point clouds, while the editing permission set can include various type attributes that support editing point clouds.

[0126] By embedding access control into the data query stage, a dual filtering mechanism based on semantic categories and access policies is implemented, which not only ensures data security but also improves the system's controllability and compliance in a multi-user collaborative environment.

[0127] For example, assuming user A's user role is Architectural Engineer, and user A initiates an edit request through client 1, then based on user A's user role, the set of edit permissions corresponding to Architectural Engineer can be matched from the permission data, thus obtaining user A's user permissions. It should be noted that this example is merely illustrative and is not intended to be limiting.

[0128] Step b3: If the user permissions include editing permissions for a specified point cloud type, then determine the editing space range based on the camera field of view data and the specified editing area.

[0129] The specified point cloud type can include each type attribute of all point clouds within the specified editing area of ​​the browsing window. If the found user permissions (i.e. the found set of editing permissions) include each type attribute of the specified point cloud type, it indicates that the user has editing permissions for the specified point cloud type, and the editing space range can be determined at this time.

[0130] Since the field of view can be determined based on camera field of view data, the specified editing area in two dimensions, combined with the field of view, can be used to determine the further combined editing space in three dimensions. Therefore, when a user needs to edit, they only need to load the point cloud within the editing space, avoiding the waste of resources from loading and rendering high-precision point clouds during editing.

[0131] Step b4: From all point cloud blocks, select each point cloud that meets the second condition to obtain high-precision point cloud data.

[0132] In this embodiment, the second condition may include: the type attribute belongs to the specified point cloud type, and the permission attribute is editable and located within the edit space. Specifically, the second condition includes three constraints:

[0133] First, the point cloud's type attribute must belong to a specified point cloud type to ensure that it only responds to editing intentions of a specific category. For example, only "wall" type point clouds can be modified without affecting "equipment" type objects. Second, the point cloud's permission attribute must be "editable," indicating that the data item is currently open for modification and is not locked or protected. Third, the point cloud must be located within the editing space, meaning its spatial coordinates fall within the valid area jointly derived from the camera's field of view and the specified editing area. In this process, each point cloud uses its own type and permission attributes as metadata tags to participate in the judgment, improving retrieval efficiency and system response speed.

[0134] In one possible example, after a user selects an editing area in the browsing window and submits an editing request, the client interacts with the server to obtain high-precision point cloud data, thereby rendering an image such as... Figure 5 The model display interface shown is in Figure 5 In the image, the left window is the preview window obtained from the mixed loading, and the right window is the editing window obtained from the full loading. It should be noted that this example is for illustrative purposes only and is not intended to be limiting.

[0135] In the optional implementation, multiple clients may simultaneously initiate modification operations on the same target model, and the resulting data conflict risks need to be coordinated and managed uniformly by the server. To ensure data consistency and operational traceability, the system introduces a conflict detection mechanism based on spatial scope and permission timing. Upon receiving a modification request, it determines whether it interacts with other ongoing editing activities, focuses on identifying potential operational conflicts, and makes corresponding handling decisions based on user responses and permission policies.

[0136] That is, the implementation of "performing modification processing based on modification requests and returning modification results to the client" in step S305 above may include the following steps c1 to c6.

[0137] Step c1: Parse the modification request to obtain the timestamp, specified editing area, user identity information, and modification requirements.

[0138] The timestamp records the specific time the modification request was generated, serving as the time reference for subsequent sorting and priority determination; the specified editing area can be used to locate the spatial range affected by this operation, which is a key input for determining whether there is geographical or geometric overlap; the user identity information is used to associate the corresponding permission level, reflecting the role level or control granularity of the operation subject in the system; and the modification request contains the actual editing content, such as operation instructions like adjusting point cloud coordinates, updating attributes, or deleting structures.

[0139] Step c2: Obtain the permission level corresponding to the user's identity information, and read the editing space range corresponding to the specified editing area from the temporary queue.

[0140] The system reads the edit space range corresponding to the currently specified edit area from a temporary queue. This edit space range was previously generated and temporarily stored when processing edit requests or modifications from the same user. This avoids complex region calculations, and subsequent modification processing can directly locate the point cloud to be modified within the edit space range, thus speeding up the localization process.

[0141] Step c3: If the edit space range does not overlap with the edit space range corresponding to other modification requests for the target model, then modify the space range directly based on the modification requirements and send a successful modification feedback to the client.

[0142] When the server processes multiple modification requests, if it finds that the editing space of the current request does not overlap with the editing space of other modification requests targeting the target model, it indicates that the operation has not touched the area being edited by others and there is no editing conflict. The server can directly perform data updates based on the modification requirements and return a successful update feedback to the client after the update is completed. Thus, the client can confirm that the modification of the high-precision point cloud data in the local cache has officially taken effect.

[0143] Step c4: If the edit space range overlaps with the edit space range corresponding to other modification requests for the target model, then report the conflict information to the client so that the client can display a conflict pop-up based on the conflict information.

[0144] When processing multiple modification requests, if the server detects that the current editing space overlaps with the editing space of at least one other modification request, the system determines that an operation conflict has occurred. In this case, the server pushes conflict information to the client, triggering a conflict pop-up window on the client interface, prompting the user that the current modification may affect the work of others, requiring the user to actively choose a subsequent action. For example, the user may be prompted: "Your modification conflicts with user B's operation. Do you want to force overwrite?" When the user clicks the "Confirm Overwrite" button, the client sends a force overwrite command to the server; when the user clicks the "Confirm Undo" button, the client sends an undo command to the server.

[0145] Step c5: When a forced overwrite command is received from the client, the modification is processed sequentially based on the modification requirements in each modification request for the target model, according to the order of permission level from high to low and timestamp from early to late, and a successful modification is reported to the corresponding client after each modification is completed.

[0146] The forced override command is generated by the client when it detects that the user has clicked the confirm override button in the conflict pop-up. When the server receives the forced override command from the client, in this case, the system will process all conflict modification requests involving the target model in descending order of permission level and in ascending order of timestamp.

[0147] In practice, permission levels are the primary sorting criterion to ensure that operations by higher-level users (such as administrators or project managers) are prioritized. For requests with the same permissions, the modification requirements are applied sequentially according to the timestamps in the requests (i.e., the submission times), ensuring the processing is deterministic and reproducible. After each modification is completed, the system sends a success notification to the corresponding client.

[0148] Step c6: When a revert modification command is received from the client, delete the modification request.

[0149] When the client detects that a user has clicked the "Confirm / Undo" button in the conflict pop-up window, it first reverts the locally cached high-precision point cloud data to its state before the modification, and then generates an undo command. If the server receives the undo command, it indicates that the user has abandoned the edit, and the server can directly delete the corresponding modification request.

[0150] Optionally, to ensure that modifications can be traced back to specific users, the server will submit a block version file to the database for saving after each update of point cloud data at a LOD level is completed, during each update based on modification requirements. This block version file may include the modified user ID, modification time, and modified content.

[0151] The above-described point cloud visualization method embodiments are server-side based. Based on the same inventive concept, the following describes a point cloud visualization method with a client-side execution. It should be noted that its basic principles and resulting technical effects are the same or similar to those described above. For the sake of brevity, parts not mentioned in this embodiment can be referred to the corresponding content in the above embodiments. That is, please refer to... Figure 6 The point cloud visualization method executed by the client may include the following steps S203~S206.

[0152] S203. When the user's editing operation in the browsing window is detected, an editing request is generated based on the user's identity information, camera field of view data, the user-defined specified editing area and specified point cloud type, and the editing request is sent to the server so that the server can retrieve high-precision point cloud data within the specified editing area from the database based on the editing request.

[0153] S204. When the high-precision point cloud data returned by the server is received, the high-precision point cloud data is stored in the local cache and rendered in the preview window of the model display interface using a hybrid loading method and in the editing window of the model display interface using a full loading method.

[0154] The hybrid loading method is as follows: full loading of high-precision point cloud data is performed within the specified editing area, and dynamic LOD loading of the point cloud is performed outside the specified editing area;

[0155] S205. When the user's modification operation in the editing window is detected, the high-precision point cloud data in the local cache is modified based on the modification request submitted by the user, and the preview window and editing window are synchronously rendered and updated. Then, a modification request is generated based on the specified editing area, user identity information and modification request, and the modification request is sent to the server so that the server can perform modification processing based on the modification request.

[0156] S206. Receive the modification result returned by the server, and confirm whether the modification takes effect or is rolled back based on the modification result.

[0157] The point cloud visualization method provided in this invention enables simultaneous low-precision global browsing and high-precision local editing on the same model display interface. This ensures overall system smoothness while meeting the dual requirements of data integrity and real-time operation for complex interactive tasks. Furthermore, by decoupling modification operations into a two-stage mode of "local immediate effect + remote final confirmation," the client guarantees both the real-time user experience and the controllability of the global data state.

[0158] In an optional implementation, prior to step S203, the point cloud visualization method may further include:

[0159] S201. When a user's browsing operation on the target model is detected, a browsing request is generated based on the user's identity information and camera field of view data, and the browsing request is sent to the server so that the server can retrieve multi-level point cloud data from the database based on the browsing request; the multi-level point cloud data includes point cloud data in at least one point cloud model;

[0160] S202. Receive multi-level point cloud data returned by the server, and perform hierarchical rendering in the browsing window based on the multi-level point cloud data using the LOD dynamic loading method.

[0161] Optionally, on the client side, the rendering precision can be dynamically adjusted based on user permissions, device performance, and operating scenario to achieve differentiated display of "same scene, different views". The client side can also use a smooth transition mechanism for the rendering process of multi-layer point cloud data: when switching precision, a "fade-in, fade-out" animation is used to cover up the LOD level jump (e.g., when switching from S0 to S1, the visible range is superimposed by 10%).

[0162] It should be noted that the execution order of each step in the above method embodiments is not limited to the figures or step numbers shown, and the execution order of each step is subject to the actual application.

[0163] In order to perform the corresponding steps in the above method embodiments and various possible implementations, the following provides two implementation methods of point cloud visualization devices applied to the server and client respectively.

[0164] Please see Figure 7 , Figure 7 This diagram illustrates one of the structural schematics of a point cloud visualization device provided in an embodiment of the present invention. The point cloud visualization device 200 is applied to a server, which communicates with a client. The server's database includes multiple point cloud models obtained by processing the target model using a LOD segmentation algorithm. The client runs a 3D editor, and the 3D editor's model display interface includes a browsing window rendered from the target model after dynamic LOD loading. Figure 7The point cloud visualization device 200 includes an editing response module 220 and a modification response module 230.

[0165] The editing response module 220 is used to retrieve high-precision point cloud data within a specified editing area from the database when it receives an editing request from the client. The editing request is generated by the client based on user identity information, camera field of view data, specified editing area, and specified point cloud type when it senses the user's editing operation in the browsing window.

[0166] The editing response module 220 is also used to return high-precision point cloud data to the client, so that the client stores the high-precision point cloud data in the local cache and renders the preview window in the model display interface using a hybrid loading method and renders the editing window in the model display interface using a full loading method; the hybrid loading method is: full loading of high-precision point cloud data within the specified editing area and dynamic loading of the point cloud at LOD outside the specified editing area;

[0167] The modification response module 230 is used to perform modification processing based on the modification request when it receives a modification request from the client, and return the modification result to the client so that the client can confirm the modification takes effect or roll back based on the modification result;

[0168] The modification request is generated by the client when it detects the user's modification operation in the editing window. Based on the user's submitted modification request, the client modifies the locally cached high-precision point cloud data and synchronously renders and updates the preview window and editing window. It is then generated based on the specified editing area, user identity information, and modification request.

[0169] Optionally, the point cloud visualization device 200 may further include a browsing response module and a preprocessing module. The preprocessing module can be used to implement steps S101-S106, the browsing response module can be used to implement steps S301-S302 and their sub-steps, the editing response module 220 can be used to implement steps S303-S304, and the modifying response module 230 can be used to implement step S305.

[0170] Please see Figure 8 , Figure 8 This is a second schematic diagram of the point cloud visualization device provided in an embodiment of the present invention. The point cloud visualization device 400 is applied to a client, which communicates with a server. The client runs a 3D editor, and the model display interface of the 3D editor includes a browsing window rendered from the target model after dynamic loading of LOD (Level of Detail). The server's database includes multiple point cloud models obtained by processing the target model using an LOD segmentation algorithm. Figure 8The point cloud visualization device 400 includes an edit request module 430, a dual-window rendering module 440, a modification request module 450, and a modification confirmation module 460.

[0171] The edit request module 430 is used to generate an edit request based on user identity information, camera field of view data, user-defined specified editing area and specified point cloud type when it senses the user's editing operation in the browsing window, and send the edit request to the server so that the server can retrieve high-precision point cloud data within the specified editing area from the database based on the edit request;

[0172] The dual-window rendering module 440 is used to store the high-precision point cloud data in the local cache when it receives the high-precision point cloud data returned by the server, and to render the preview window in the model display interface using a hybrid loading method and the editing window in the model display interface using a full loading method.

[0173] The modification request module 450 is used to modify the locally cached high-precision point cloud data based on the modification request submitted by the user when the modification operation of the user is detected in the editing window. After the preview window and the editing window are synchronously rendered and updated, a modification request is generated based on the specified editing area, user identity information and modification request, and the modification request is sent to the server so that the server can perform modification processing based on the modification request.

[0174] The modification confirmation module 460 is used to receive the modification results returned by the server and confirm whether the modification takes effect or is rolled back based on the modification results.

[0175] Optionally, the point cloud visualization device 400 may further include a browsing request module and a dynamic loading module. The browsing request module can be used to implement step S201, and the dynamic loading module can be used to implement step S202.

[0176] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the point cloud visualization device 200 and point cloud visualization device 400 described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.

[0177] Please see Figure 9 , Figure 9 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present invention. The electronic device 300 includes a processor 310, a memory 320, and a bus 330, with the processor 310 connected to the memory 320 via the bus 330.

[0178] The memory 320 can be used to store software programs or firmware, for example, the software programs or firmware corresponding to the point cloud visualization device 200 or the point cloud visualization device 400 described above. The processor 310 executes various functional applications and data processing by running the software programs stored in the memory 320 to realize the point cloud visualization method provided in the embodiments of the present invention.

[0179] The memory 320 may be, but is not limited to, RAM (Random Access Memory), ROM (Read Only Memory), FLASH (Flash Memory), PROM (Programmable Read-Only Memory), EPROM (Erasable Programmable Read-Only Memory), EEPROM (Electric Erasable Programmable Read-Only Memory), etc.

[0180] The processor 310 can be an integrated circuit chip with signal processing capabilities, capable of executing software programs, such as the software programs corresponding to the point cloud visualization device 200 or point cloud visualization device 400. The processor 310 can be a general-purpose processor, including: CPU (Central Processing Unit), NP (Network Processor), SoC (System on Chip), etc.; it can also be: DSP (Digital Signal Processor), ASIC (Application Specific Integrated Circuit), FPGA (Field-Programmable Gate Array), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components.

[0181] Understandable. Figure 9 The structure shown is for illustrative purposes only; the electronic device 300 may also include components that are more advanced than those shown. Figure 9 The more or fewer components shown, or having the same Figure 9 The different configurations shown. Figure 9 The components shown can be implemented using hardware, software, or a combination thereof.

[0182] This invention also provides a computer-readable storage medium storing a computer program. When executed by a processor, this computer program implements the point cloud visualization method disclosed in the above embodiments. The computer-readable storage medium can be, but is not limited to, various media capable of storing program code, such as a USB flash drive, external hard drive, ROM, RAM, PROM, EPROM, EEPROM, FLASH disk, or optical disk.

[0183] This invention also provides a computer program product that, when executed by a processor, implements the point cloud visualization method disclosed in the above embodiments.

[0184] In summary, this invention provides a point cloud visualization method, apparatus, electronic device, and readable storage medium. On one hand, when a user performs an editing operation, the client generates an editing request based on user identity information, camera field of view data, a user-defined specified editing area, and a specified point cloud type, and sends it to the server. The server then retrieves and returns high-precision point cloud data within the specified editing area. The client then stores the high-precision point cloud data in its local cache and renders both the preview window and the editing window in the model display interface using a hybrid loading method and a full loading method. The hybrid loading method involves fully loading the high-precision point cloud data within the specified editing area and dynamically loading the point cloud data at LOD (Level of Detail) outside the specified editing area. This allows the client to support the coexistence of the preview and editing windows when editing is required, thereby avoiding global high-precision loading to save GPU resources and achieving a balance between rendering performance and editing accuracy.

[0185] On the other hand, in edit mode, when a user makes modifications, the client modifies the locally cached high-precision point cloud data based on the user's submitted modification requests and synchronously renders and updates the preview and edit windows. Then, it generates a modification request based on the specified editing area, user identity information, and modification requirements. The server then processes the modification request and returns the modified result to the client, allowing the client to confirm the changes taking effect or roll back the changes. In this way, the user's modifications are synchronized in both the preview and edit windows of the model display interface, facilitating comparison and enabling the coexistence of preview and partial editing modes.

[0186] The above are merely specific embodiments of the present invention, but the scope of protection of the present invention is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in the present invention should be included within the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be determined by the scope of the claims.

Claims

1. A method of point cloud visualization, the method comprising: The application is applied to a server, the server is in communication connection with a client, a database of the server includes a plurality of point cloud models obtained by processing a target model by a LOD segmentation algorithm, the client runs a 3D editor, and a model display interface of the 3D editor includes a browsing window rendered by dynamically loading and rendering the target model after LOD; When receiving an editing request sent by the client, high-precision point cloud data in a specified editing area is found from the database based on the editing request; the editing request is generated by the client based on user identity information, camera field of view data, the specified editing area and a specified point cloud type when the client perceives an editing operation of a user in the browsing window; The high-precision point cloud data is returned to the client, so that the client stores the high-precision point cloud data in a local cache and renders a preview window in the model display interface in a hybrid loading mode and renders an editing window in the model display interface in a full loading mode; the hybrid loading mode is that the high-precision point cloud data is fully loaded in the specified editing area and the point cloud is dynamically loaded by LOD outside the specified editing area; When receiving a modification request sent by the client, modification processing is performed based on the modification request, and a modification result is returned to the client, so that the client confirms modification taking effect or backtracking based on the modification result; The modification request is generated by the client based on the specified editing area, the user identity information and the modification requirement after the client perceives a modification operation of a user in the editing window, modifies the high-precision point cloud data in the local cache based on the modification requirement of the user and synchronously renders and updates the preview window and the editing window.

2. The point cloud visualization method of claim 1, wherein, Before the step of receiving the editing request sent by the client, the method further includes: When receiving a browsing request sent by the client, multi-level point cloud data is found from the database based on the browsing request; the browsing request is generated by the client based on the user identity information and the camera field of view data when the client perceives a browsing operation of a user on the target model; and the multi-level point cloud data includes point cloud data in at least one point cloud model; The multi-level point cloud data is returned to the client, so that the client performs hierarchical rendering in the browsing window based on the multi-level point cloud data in a LOD dynamic loading mode.

3. The point cloud visualization method of claim 2, wherein, Each of the point cloud models belongs to a different LOD level, each of the point cloud models includes a plurality of point cloud blocks belonging to the same LOD level, each point cloud in each point cloud block includes an authority attribute, the database further includes a comprehensive pixel threshold of each point cloud block under each LOD level, and the comprehensive pixel threshold reflects a minimum pixel size occupied by the point cloud block after rendering; The step of finding the multi-level point cloud data from the database based on the browsing request includes: Parsing the browsing request to obtain user identity information and camera field of view data; reading user authority from authority data in the database based on the user identity information; if the user authority includes a browsing authority, determining a field of view spatial range based on the camera field of view data; from all point cloud blocks, filtering out each pending point cloud block that has an overlap with the field of view spatial range; for each pending point cloud block, determining an actual pixel diameter required by a minimum circumscribed sphere of the point cloud block based on a spatial radius of the minimum circumscribed sphere of the point cloud block, a camera position in the camera field of view data, a vertical field of view angle and a screen pixel height; from all pending point cloud blocks, filtering out each target point cloud block whose actual pixel diameter is greater than the comprehensive pixel threshold value; from all target point cloud blocks, filtering out each point cloud that satisfies a first condition to obtain the multi-level point cloud data; the first condition includes being located in the field of view spatial range and having a viewable or editable authority attribute.

4. The point cloud visualization method of claim 2, wherein, Before receiving the browsing request, the method further includes: receiving a target model uploaded by the client; determining a type attribute and an authority attribute of each point cloud in the target model; performing spatial block processing on the target model by using a LOD segmentation algorithm to obtain a plurality of point cloud blocks corresponding to each LOD level; wherein one point cloud model includes all point cloud blocks of one LOD level; for each point cloud in each point cloud block, respectively searching a basic pixel threshold value, a type adjustment threshold value and a precision adjustment threshold value that respectively match the LOD level, the type attribute and the authority attribute of the point cloud from a preset basic mapping table, a type mapping table and an authority mapping table; weighting and summing the type adjustment threshold value and the precision adjustment threshold value of the point cloud to obtain a comprehensive adjustment threshold value, and adding the basic pixel threshold value of the point cloud to the comprehensive adjustment threshold value to obtain a single-point pixel threshold value; respectively calculating a mean value of all single-point size threshold values corresponding to each point cloud block to obtain a comprehensive pixel threshold value of each point cloud block.

5. The point cloud visualization method of claim 1, wherein, Each point cloud model belongs to a different LOD level, and each point cloud model includes a plurality of point cloud blocks belonging to the same LOD level; each point cloud in each point cloud block includes a type attribute and an authority attribute; The step of finding high-precision point cloud data in a specified editing region from the database based on the editing request includes: parsing the editing request to obtain user identity information, camera field of view data, the specified editing region and the specified point cloud type; obtaining user authority related to the user identity information; if the user authority includes an editing authority for the specified point cloud type, determining an editing spatial range based on the camera field of view data and the specified editing region; from all point cloud blocks, filtering out each point cloud that satisfies a second condition to obtain the high-precision point cloud data, the second condition including that the type attribute belongs to the specified point cloud type, the authority attribute is editable and is located in the editing spatial range.

6. The point cloud visualization method of claim 5, wherein, The step of performing modification processing based on the modification request and returning a modification result to the client includes: parsing the modification request to obtain a timestamp, a specified editing region, user identity information and the modification requirement generated by the modification request; obtaining a permission level corresponding to the user identity information, and reading an editing space range corresponding to the specified editing region from the temporary queue; if the editing space range does not overlap with the editing space range corresponding to other modification requests for the target model, performing modification processing based on the modification requirement, and feeding back a modification success to the client; if the editing space range overlaps with the editing space range corresponding to other modification requests for the target model, feeding back conflict information to the client to enable the client to display a conflict pop-up window based on the conflict information; when receiving a forced override command sent by the client, performing modification processing based on the modification requirement in each modification request for the target model in sequence based on the order of the permission level from high to low and the order of the timestamp from early to late, and feeding back a modification success to the corresponding client after each modification processing is completed; wherein the forced override command is generated when the client senses that a user clicks a confirmation override button in the conflict pop-up window; when receiving a modification cancellation command sent by the client, deleting the modification request; wherein the modification cancellation command is generated when the client senses that a user clicks a confirmation cancellation button in the conflict pop-up window, and the high-precision point cloud data cached locally is rolled back to the state before the modification.

7. A method of point cloud visualization, characterized in that, The application is applied to a client, the client is in communication connection with a server, the client runs a 3D editor, a model display interface of the 3D editor includes a browsing window rendered after a target model is dynamically loaded by a LOD, and a database of the server includes a plurality of point cloud models obtained by processing the target model by a LOD segmentation algorithm; the method comprises: when sensing that a user performs an editing operation in the browsing window, generating an editing request based on user identity information, camera field of view data, a specified editing region determined by the user, and a specified point cloud type, and sending the editing request to the server to enable the server to find high-precision point cloud data in the specified editing region from the database based on the editing request; when receiving the high-precision point cloud data returned by the server, storing the high-precision point cloud data in a local cache and rendering a preview window in the model display interface in a hybrid loading mode and an editing window in the model display interface in a full loading mode; the hybrid loading mode is that the high-precision point cloud data is fully loaded in the specified editing region and the point cloud is dynamically loaded by the LOD outside the specified editing region; when sensing that a user performs a modification operation in the editing window, modifying the high-precision point cloud data cached locally based on a modification requirement submitted by the user, and synchronously rendering and updating the preview window and the editing window, generating a modification request based on the specified editing region, the user identity information, and the modification requirement, and sending the modification request to the server to enable the server to perform modification processing based on the modification request; receiving a modification result returned by the server, and confirming whether the modification takes effect or rolls back based on the modification result.

8. The point cloud visualization method of claim 7, wherein, Before the editing request is generated, the method further comprises: When a user's browsing operation on the target model is perceived, a browsing request is generated based on the user identity information and camera field of view data, and the browsing request is sent to the server, so that the server finds multi-level point cloud data from the database based on the browsing request; the multi-level point cloud data includes point cloud data in at least one point cloud model; The multi-level point cloud data returned by the server is received, and based on the multi-level point cloud data, hierarchical rendering is performed in the browsing window using a LOD dynamic loading method.

9. A point cloud visualization apparatus, characterized by Applied to a server, the server is in communication connection with a client, a database of the server includes a plurality of point cloud models obtained by processing a target model using a LOD segmentation algorithm, the client runs a 3D editor, and a model display interface of the 3D editor includes a browsing window rendered after the target model is dynamically loaded using LOD; the device comprises: An editing response module is configured to find high-precision point cloud data in a specified editing area from the database based on an editing request when the editing request is received from the client; the editing request is generated by the client based on user identity information, camera field of view data, the specified editing area, and a specified point cloud type when a user's editing operation on the browsing window is perceived; The editing response module is further configured to return the high-precision point cloud data to the client, so that the client stores the high-precision point cloud data in a local cache and renders a preview window in the model display interface using a hybrid loading method and renders an editing window in the model display interface using a full loading method; the hybrid loading method is to fully load the high-precision point cloud data in the specified editing area and to dynamically load point clouds outside the specified editing area using LOD; An modification response module is configured to perform modification processing based on a modification request when the modification request is received from the client, and to return a modification result to the client, so that the client confirms whether the modification takes effect or reverts based on the modification result; The modification request is generated by the client based on a user's modification requirement submitted by the user, modification of the high-precision point cloud data stored in the local cache, and synchronous rendering and updating of the preview window and the editing window when a user's modification operation on the editing window is perceived.

10. A point cloud visualization apparatus, characterized by Applied to a client, the client is in communication connection with a server, the client runs a 3D editor, a model display interface of the 3D editor includes a browsing window rendered after a target model is dynamically loaded using LOD, and a database of the server includes a plurality of point cloud models obtained by processing the target model using a LOD segmentation algorithm; the device comprises: The editing request module is configured to generate an editing request based on the user identity information, the camera field of view data, the specified editing region determined by the user, and the specified point cloud type when the editing operation of the user in the browsing window is perceived, and send the editing request to the server, so that the server finds high-precision point cloud data in the specified editing region from the database based on the editing request. The double-window rendering module is configured to store the high-precision point cloud data in a local cache and render a preview window in the model display interface in a hybrid loading manner and render an editing window in the model display interface in a full loading manner when the high-precision point cloud data returned by the server is received. The hybrid loading manner is to perform full loading on the high-precision point cloud data in the specified editing region and perform LOD dynamic loading on the point cloud outside the specified editing region. The modification request module is configured to generate a modification request based on the specified editing region, the user identity information, and the modification requirement after modifying the high-precision point cloud data in the local cache based on the modification requirement submitted by the user and synchronously rendering and updating the preview window and the editing window when the modification operation of the user in the editing window is perceived, and send the modification request to the server, so that the server performs modification processing based on the modification request. The modification confirmation module is configured to receive a modification result returned by the server and confirm modification taking effect or backtracking based on the modification result.

11. An electronic device, comprising: The memory stores a software program, and the processor executes the software program to implement the point cloud visualization method of any one of claims 1-6 or the point cloud visualization method of any one of claims 7-8 when the electronic device is running. The computer readable storage medium stores a computer program, and the computer program is executed by the processor to implement the point cloud visualization method of any one of claims 1-6 or the point cloud visualization method of any one of claims 7-8.

12. A computer-readable storage medium, characterized in that, ​

Citation Information

Patent Citations

  • Metacosmic digital asset online interaction method based on three-dimensional engine

    CN120163914A

  • Point cloud preprocessing and rendering

    EP3346449A1