Section display method and device based on point cloud data, equipment and storage medium

By sorting and chunking the point cloud data, combining with the Delaunay algorithm to generate a triangle mesh, and using the surface rendering algorithm, the problem of slow visual display of point cloud data in the existing technology is solved, and efficient rendering is achieved and interactive visual display.

CN119295700AActive Publication Date: 2025-01-10INST OF ENGINEERING THERMOPHYSICS - CHINESE ACAD OF SCI
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202411437384.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-15
Publication Date
2025-01-10
Estimated Expiration
2044-10-15

AI Technical Summary

Technical Problem

When existing algorithms process large amounts of point cloud data, the section visualization speed is slow, which is difficult to meet the needs of rapid post-processing and in-situ visualization of calculating fluid mechanical flow field data.

Method used

Using a method based on sorting algorithm and Delaunay algorithm, point cloud data is processed in blocks, target triangle mesh is generated, and surface rendering algorithm is used to render, reducing algorithm complexity and improving rendering efficiency.

Benefits of technology

Through appropriate chunking processing and rendering algorithms, the generation speed of target triangle mesh is significantly accelerated, the rendering efficiency is improved, and interactive visual display of sections inside the spatial point cloud or at the target cutting position is realized.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119295700A_ABST
    Figure CN119295700A_ABST
Patent Text Reader

Abstract

The invention provides a section display method and device based on point cloud data, equipment and a storage medium, and can be applied to the technical field of fluid mechanics and the technical field of visualization. The method comprises: obtaining respective target point cloud data of a plurality of target points located at a target cutting position, the target point cloud data comprising position information: based on a sorting algorithm and the position information, sorting the plurality of target points to obtain a sorted point cloud, the sorted point cloud representing a set of the plurality of target points having a sorting relationship; on the basis of the local sparse degree and the block number of the sorted point clouds, the sorted point clouds are blocked to obtain a plurality of initial block point clouds, and the initial block point clouds comprise at least one target point; processing the plurality of initial block point clouds according to a Delou inner algorithm to obtain target triangular meshes corresponding to the plurality of initial block point clouds; and rendering the plurality of target triangular meshes by using a surface rendering algorithm to obtain a target rendering section for the target cutting position.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the technical fields of fluid mechanics and visualization, and more specifically, to a cross-sectional display method, device, equipment and storage medium based on point cloud data. Background Art

[0002] In recent years, with the development of technologies such as digital twins and digital prototypes, higher requirements have been placed on the rapid post-processing and in-situ visualization of flow field data in computational fluid dynamics. At present, when it comes to the rapid integration and display of flow field data with different grids, different calculation methods, and different simulation programs, it is necessary to perform visualization operations such as rapid segmentation, rendering, display, and hiding of spatial point clouds. However, when the number of point clouds is huge, the existing algorithms are slow in directly processing point cloud data for cross-sectional visualization. Summary of the invention

[0003] In view of this, the present disclosure provides a cross-section display method, device, equipment and storage medium based on point cloud data.

[0004] One aspect of the present disclosure provides a cross-sectional display method based on point cloud data, comprising:

[0005] The target point cloud data of each of the multiple target points located at the target cutting position is obtained, wherein the target point cloud data includes position information: based on the sorting algorithm and the position information, the multiple target points are sorted to obtain a sorted point cloud, wherein the sorted point cloud represents a set of multiple target points having a sorting relationship; based on the local sparsity and the number of blocks of the sorted point cloud, the sorted point cloud is divided into blocks to obtain a plurality of initial block point clouds, wherein the initial block point cloud includes at least one target point; the multiple initial block point clouds are processed respectively according to the Delaunay algorithm to obtain target triangular meshes corresponding to each of the multiple initial block point clouds; the multiple target triangular meshes are rendered using a surface rendering algorithm to obtain a target rendering section for the target cutting position.

[0006] According to an embodiment of the present disclosure, a plurality of initial block point clouds are processed respectively according to the Delaunay algorithm to obtain target triangular meshes corresponding to the plurality of initial block point clouds, including:

[0007] According to the Delaunay algorithm, multiple initial block point clouds are processed to obtain initial triangular meshes corresponding to each of the multiple initial block point clouds; according to the gap state information between the multiple initial triangular meshes, the point cloud overlap parameter is determined; based on the point cloud overlap parameter, the multiple initial block point clouds are overlapped to obtain target block point clouds corresponding to each of the multiple initial block data, wherein the number of overlapping points between the multiple target block point clouds is the same; according to the Delaunay algorithm, the multiple target block point clouds are processed to obtain target triangular meshes corresponding to each of the multiple target block point clouds.

[0008] According to an embodiment of the present disclosure, the multiple initial block point clouds include a first block point cloud and a second block point cloud, wherein the sorted point cloud is divided into blocks based on the local sparsity and the number of blocks of the sorted point cloud, and the multiple initial block point clouds include:

[0009] According to the position information of the sorted point cloud, the local sparsity of at least one position area is determined; for each position area in the at least one position area, when the local sparsity of the position area is less than a preset sparsity threshold, the target points located in the position area in the sorted point cloud are evenly blocked based on the number of blocks to obtain a plurality of first block point clouds, wherein each first block point cloud contains the same number of target points; when the local sparsity of the position area is greater than or equal to the preset sparsity threshold, the target points located in the position area in the sorted point cloud are non-uniformly blocked based on the number of blocks to obtain a plurality of second block point clouds, wherein the plurality of second block point clouds contain different numbers of target points.

[0010] According to an embodiment of the present disclosure, the number of blocks is determined based on the following operations: the number of blocks is determined according to the relationship between the number of blocks and the complexity of the algorithm, the number of target points, and the upper limit of the number of blocks.

[0011] According to an embodiment of the present disclosure, acquiring a plurality of target points located at a target cutting position includes:

[0012] Acquire multiple initial points located at the target cutting position; when the density of the multiple initial points is less than a preset density threshold, acquire at least one associated point located at the associated cutting position, wherein the target cutting position is adjacent to the associated cutting position; compress the at least one associated point to the target cutting position to obtain a compressed point cloud; obtain multiple target points corresponding to the target cutting position based on the compressed point cloud and the multiple initial points.

[0013] According to an embodiment of the present disclosure, acquiring target point cloud data of each of a plurality of target points located at a target cutting position further includes:

[0014] Acquire initial point cloud data of multiple target points located at the target cutting position, wherein the initial point cloud data includes pressure information of the target points; determine an upper pressure limit value and a lower pressure limit value according to the pressure information of each of the multiple target points; normalize the initial point cloud data according to the upper pressure limit value and the lower pressure limit value to obtain target point cloud data.

[0015] According to an embodiment of the present disclosure, the section display method based on point cloud data further includes:

[0016] After the target rendering section is generated, the compressed point cloud is decompressed to obtain at least one first decompressed point, wherein the first decompressed point represents an associated point corresponding to the associated cutting position.

[0017] Another aspect of the present disclosure provides a cross-sectional display device based on point cloud data, comprising:

[0018] The acquisition module is used to acquire target point cloud data of each of the multiple target points located at the target cutting position, wherein the target point cloud data includes position information:

[0019] A sorting module, used for sorting multiple target points based on a sorting algorithm and position information to obtain a sorted point cloud, wherein the sorted point cloud represents a set of multiple target points having a sorting relationship;

[0020] A block module is used to block the sorted point cloud based on the local sparsity and the number of blocks of the sorted point cloud to obtain a plurality of initial block point clouds, wherein the initial block point cloud includes at least one target point;

[0021] A generation module is used to process the multiple initial block point clouds respectively according to the Delaunay algorithm to obtain target triangular meshes corresponding to the multiple initial block point clouds;

[0022] The rendering module is used to render multiple target triangular meshes using a surface rendering algorithm to obtain a target rendering section for a target cutting position.

[0023] Another aspect of the present disclosure provides an electronic device, comprising:

[0024] one or more processors;

[0025] a memory for storing one or more programs,

[0026] When one or more programs are executed by one or more processors, the one or more processors implement the above-mentioned section display method based on point cloud data.

[0027] Another aspect of the present disclosure provides a computer-readable storage medium storing computer-executable instructions, which are used to implement the above-mentioned section display method based on point cloud data when executed.

[0028] According to the section display method, device, equipment and storage medium based on point cloud data provided by the present disclosure, multiple target points are sorted based on the sorting algorithm and position information to obtain a sorted point cloud, and based on the local sparsity and the number of blocks of the sorted point cloud, the sorted point cloud is divided into blocks to obtain multiple initial block point clouds; the multiple initial block point clouds are processed respectively according to the Delaunay algorithm to obtain the target triangular meshes corresponding to each of the multiple initial block point clouds; the multiple target triangular meshes are rendered using the surface rendering algorithm to obtain the target rendering section for the target cutting position. Since the appropriate number of blocks is selected, the sorted point cloud is divided into blocks, and then the Delaunay algorithm is used to process the multiple initial block point clouds block by block to generate the target triangular mesh, there is no need to judge the complex topological relationship and the adjacent relationship between points, edges and triangles, thereby reducing the algorithm complexity, accelerating the generation speed of the target triangular mesh, and improving the rendering efficiency, so as to realize the interactive visualization display of the section inside the spatial point cloud or at a certain target cutting position. BRIEF DESCRIPTION OF THE DRAWINGS

[0029] The above and other objects, features and advantages of the present disclosure will become more apparent through the following description of the embodiments of the present disclosure with reference to the accompanying drawings, in which:

[0030] Figure 1 A flow chart of a section display method based on point cloud data according to an embodiment of the present disclosure is shown;

[0031] Figure 2 An example schematic diagram showing multiple target points at a target cutting position according to an embodiment of the present disclosure;

[0032] Figure 3 An example schematic diagram of a target segmented point cloud according to an embodiment of the present disclosure is shown;

[0033] Figure 4 An example schematic diagram showing compression association points according to an embodiment of the present disclosure is shown;

[0034] Figure 5 A block diagram of a cross-sectional display device based on point cloud data according to an embodiment of the present disclosure is shown; and

[0035] Figure 6 A block diagram of an electronic device suitable for implementing a slice display method based on point cloud data according to an embodiment of the present disclosure is shown. DETAILED DESCRIPTION

[0036] Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. However, it should be understood that these descriptions are exemplary only and are not intended to limit the scope of the present disclosure. In the following detailed description, for ease of explanation, many specific details are set forth to provide a comprehensive understanding of the embodiments of the present disclosure. However, it is apparent that one or more embodiments may also be implemented without these specific details. In addition, in the following description, descriptions of known structures and technologies are omitted to avoid unnecessary confusion of the concepts of the present disclosure.

[0037] The terms used herein are only for describing specific embodiments and are not intended to limit the present disclosure. The terms "comprise", "include", etc. used herein indicate the existence of features, steps, operations and / or components, but do not exclude the existence or addition of one or more other features, steps, operations or components.

[0038] All terms (including technical and scientific terms) used herein have the meanings commonly understood by those skilled in the art unless otherwise defined. It should be noted that the terms used herein should be interpreted as having a meaning consistent with the context of this specification and should not be interpreted in an idealized or overly rigid manner.

[0039] When using expressions such as "at least one of A, B, and C, etc.", they should generally be interpreted according to the meaning of the expression commonly understood by those skilled in the art (for example, "a system having at least one of A, B, and C" should include but is not limited to a system having A alone, B alone, C alone, A and B, A and C, B and C, and / or A, B, C, etc.).

[0040] In the process of realizing the present disclosure, it is found that in recent years, with the development of technologies such as digital twins and digital prototypes, higher requirements have been put forward for the rapid post-processing and in-situ visualization of flow field data in computational fluid dynamics. At present, when it comes to the rapid integration and display of flow field data with different grids, different calculation methods, and different simulation programs, it is necessary to perform visualization operations such as rapid segmentation, rendering, display, and hiding of spatial point clouds. However, when the number of point clouds is huge, the existing algorithms are slow in directly processing point cloud data for cross-sectional visualization display.

[0041] In view of this, the embodiments of the present disclosure provide a section display method, device, equipment and storage medium based on point cloud data. The method includes: obtaining target point cloud data of each of multiple target points located at the target cutting position, wherein the target point cloud data includes position information: sorting the multiple target points based on the sorting algorithm and the position information to obtain a sorted point cloud, wherein the sorted point cloud represents a collection of multiple target points with a sorting relationship; based on the local sparsity and the number of blocks of the sorted point cloud, the sorted point cloud is divided into blocks to obtain multiple initial block point clouds, wherein the initial block point cloud includes at least one target point; processing the multiple initial block point clouds respectively according to the Delaunay algorithm to obtain the target triangular meshes corresponding to each of the multiple initial block point clouds; rendering the multiple target triangular meshes using the surface rendering algorithm to obtain the target rendering section for the target cutting position.

[0042] In the technical solution of the present disclosure, the user information (including but not limited to user personal information, user image information, user device information, such as location information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved are all information and data authorized by the user or fully authorized by all parties, and the collection, storage, use, processing, transmission, provision, disclosure and application of the relevant data comply with relevant laws, regulations and standards, take necessary confidentiality measures, do not violate public order and good morals, and provide corresponding operation entrances for users to choose to authorize or refuse.

[0043] Figure 1 A flow chart of a section display method based on point cloud data according to an embodiment of the present disclosure is shown.

[0044] like Figure 1 As shown, the method 100 includes operations S110 to S150.

[0045] In operation S110 , target point cloud data of each of a plurality of target points located at a target cutting position is acquired.

[0046] According to an embodiment of the present disclosure, cutting is performed in a flow field scene in sequence along a certain direction based on cutting positions to obtain a section with a certain thickness corresponding to each cutting position, and the section has multiple three-dimensional flow field points.

[0047] According to an embodiment of the present disclosure, the target cutting position represents the cutting position corresponding to the section to be rendered. The target point represents the three-dimensional flow field point on the section at the target cutting position.

[0048] For example, in a certain flow field scene, the initial position 0% and the end position 100% are determined, the target cutting position is 50%, and cutting is performed based on the target cutting position of 50%, and the target point cloud data of each of the multiple target points located on the cutting surface at the target cutting position of 50% are obtained.

[0049] According to an embodiment of the present disclosure, the target point cloud data represents the spatial geometric information of the target point, and the target point cloud data includes position information.

[0050] In operation S120 , the plurality of target points are sorted based on a sorting algorithm and the position information to obtain a sorted point cloud.

[0051] According to an embodiment of the present disclosure, a sorted point cloud represents a set of multiple target points having a sorted relationship.

[0052] According to an embodiment of the present disclosure, a plurality of target points are sorted using a sorting algorithm according to the position information of the target points to obtain a sorted point cloud. The quick sorting algorithm may be a quick sorting algorithm.

[0053] For example, according to the position information of multiple target points on the horizontal axis, they are sorted from small to large to obtain a sorted point cloud.

[0054] In operation S130 , the sorted point cloud is divided into blocks based on the local sparsity and the number of blocks of the sorted point cloud to obtain a plurality of initial block point clouds.

[0055] According to an embodiment of the present disclosure, the initial block point cloud includes at least one target point.

[0056] According to an embodiment of the present disclosure, the sorted point cloud is divided into blocks according to the number of blocks and the local sparsity of different local areas in the sorted point cloud to obtain multiple initial block point clouds. The local sparsity represents the point density level of the local area.

[0057] According to the embodiments of the present disclosure, non-uniform blocking may be performed in a local area with a higher degree of local sparsity, and uniform blocking may be performed in a local area with a lower degree of local sparsity.

[0058] In operation S140 , the multiple initial block point clouds are processed respectively according to the Delaunay algorithm to obtain target triangular meshes corresponding to the multiple initial block point clouds.

[0059] According to an embodiment of the present disclosure, the Delaunay algorithm may be a Delaunay triangulation algorithm (Delaunay triangulation), and multiple initial block point clouds may be processed separately according to the Delaunay algorithm, and then it is determined whether there are gaps between the multiple initial block points. If there are no gaps, the target triangular meshes corresponding to the multiple initial block point clouds may be generated block by block according to the Delaunay algorithm.

[0060] According to an embodiment of the present disclosure, when gaps exist, the gaps are eliminated, and then a plurality of target triangular meshes corresponding to each of the initial block point clouds are generated block by block according to the Delaunay algorithm.

[0061] According to an embodiment of the present disclosure, the target triangular mesh corresponding to the initial block point cloud is a polygonal mesh composed entirely of triangles, and the triangles are constructed based on the target points in the initial block point cloud.

[0062] In operation S150 , a plurality of target triangular meshes are rendered using a surface rendering algorithm to obtain a target rendering section for a target cutting position.

[0063] According to an embodiment of the present disclosure, a surface rendering program written based on a surface rendering algorithm is called to render multiple target triangular meshes to obtain a target rendering section for a target cutting position.

[0064] According to the embodiments of the present disclosure, the section rendering is performed based on each target cutting position, thereby realizing the interactive display of any cutting position in a certain direction in the flow field scene.

[0065] According to the embodiments of the present disclosure, since an appropriate number of blocks is selected, the sorted point cloud is divided into blocks, and then the Delaunay algorithm is used to process multiple initial block point clouds block by block to generate a target triangular mesh. There is no need to judge the complex topological relationship and the adjacent relationship of points, edges, and triangles, thereby reducing the algorithm complexity, accelerating the generation speed of the target triangular mesh, and improving the rendering efficiency, thereby achieving interactive visualization of the section inside the spatial point cloud or at a target cutting position.

[0066] Figure 2 An exemplary schematic diagram of multiple target points at a target cutting position according to an embodiment of the present disclosure is shown.

[0067] like Figure 2 As shown, in the flow field scene, the target cutting position 210a is determined along the transverse direction, and cutting is performed based on the target cutting position 210a to obtain multiple target points 211 located at the target cutting position; in the flow field scene, the target cutting position 220b is determined along the longitudinal direction, and cutting is performed based on the target cutting position 220b to obtain multiple target points 221 located at the target cutting position.

[0068] According to an embodiment of the present disclosure, a plurality of initial block point clouds are processed respectively according to the Delaunay algorithm to obtain target triangular meshes corresponding to the plurality of initial block point clouds, including:

[0069] According to the Delaunay algorithm, multiple initial block point clouds are processed to obtain initial triangular meshes corresponding to each of the multiple initial block point clouds; according to the gap state information between the multiple initial triangular meshes, the point cloud overlap parameter is determined; based on the point cloud overlap parameter, the multiple initial block point clouds are overlapped to obtain target block point clouds corresponding to each of the multiple initial block data, wherein the number of overlapping points between the multiple target block point clouds is the same; according to the Delaunay algorithm, the multiple target block point clouds are processed to obtain target triangular meshes corresponding to each of the multiple target block point clouds.

[0070] According to an embodiment of the present disclosure, a plurality of initial block point clouds are processed block by block using the Delaunay algorithm to obtain initial triangular meshes corresponding to each of the plurality of initial block point clouds.

[0071] According to an embodiment of the present disclosure, the gap state information between multiple initial triangular meshes includes gap quantity information and target point quantity information located in each gap, and the point cloud overlap parameter represents the target point quantity parameter overlapping between multiple initial block point clouds.

[0072] According to an embodiment of the present disclosure, a maximum-sized gap is determined based on gap state information between a plurality of initial triangular meshes, and a point cloud overlap parameter is determined based on the number of target points located in the maximum-sized gap.

[0073] For example, there are 20 gaps between multiple initial triangular meshes, and the number of target points in the largest gap is 100, so the point cloud overlap parameter is 100.

[0074] According to an embodiment of the present disclosure, multiple initial block point clouds are overlapped with each other based on the point cloud overlap parameter to obtain target block point clouds corresponding to each of the multiple initial block data, and the number of overlapping target points between adjacent target block point clouds is the parameter value in the point cloud overlap parameter.

[0075] For example, the number of overlapping target points between adjacent target block point clouds is 100.

[0076] According to the embodiments of the present disclosure, the Delaunay algorithm is used to process multiple target block point clouds one by one to obtain target triangular meshes corresponding to each of the multiple target block point clouds. The target block point clouds overlap and are merged into a unified whole. There are no gaps between the target triangular meshes. The target triangular meshes are then rendered in sequence, and the rendering efficiency is greatly improved. For example, the time to render the target triangular mesh after segmentation is 2.5 minutes, which is 14 times higher than directly rendering multiple target points.

[0077] According to the embodiments of the present disclosure, multiple target block point clouds are obtained after overlapping processing of multiple initial block point clouds based on point cloud overlap parameters, which speeds up the Delaunay algorithm in processing multiple target block point clouds to generate multiple target triangular meshes and improves the efficiency of section rendering. In addition, there are no gaps between the multiple target triangular meshes, and a complete target rendering section is obtained after rendering, which reduces the algorithm complexity and improves the rendering efficiency.

[0078] According to an embodiment of the present disclosure, the multiple initial block point clouds include a first block point cloud and a second block point cloud, wherein the sorted point cloud is divided into blocks based on the local sparsity and the number of blocks of the sorted point cloud, and the multiple initial block point clouds include:

[0079] According to the position information of the sorted point cloud, the local sparsity of at least one position area is determined; for each position area in the at least one position area, when the local sparsity of the position area is less than a preset sparsity threshold, the target points located in the position area in the sorted point cloud are evenly blocked based on the number of blocks to obtain a plurality of first block point clouds, wherein each first block point cloud contains the same number of target points; when the local sparsity of the position area is greater than or equal to the preset sparsity threshold, the target points located in the position area in the sorted point cloud are non-uniformly blocked based on the number of blocks to obtain a plurality of second block point clouds, wherein the plurality of second block point clouds contain different numbers of target points.

[0080] According to an embodiment of the present disclosure, the sorted point cloud is divided according to its location information to obtain one or more location areas, and the local sparsity corresponding to each location area is obtained according to the density of the target points in each location area. Each location area is divided into blocks according to the local sparsity of each location area.

[0081] According to an embodiment of the present disclosure, when the local sparsity of the location area is less than a preset sparsity threshold, the target points in the sorted point cloud located in the location area are evenly divided into blocks to obtain a plurality of first block point clouds; when the local sparsity of the location area is greater than or equal to the preset sparsity threshold, the target points in the sorted point cloud located in the location area are non-uniformly divided into blocks based on the number of blocks to obtain a plurality of second block point clouds. The sum of the number of the first block point clouds and the second block point clouds is equal to the number of blocks.

[0082] According to an embodiment of the present disclosure, each first block point cloud contains the same number of target points, and each second block point cloud contains a different number of target points. The number of target points contained in the second block point cloud is determined according to the sparsity of the area where the second block point cloud is located.

[0083] For example, if the number of target points n is greater than 20,000, the complexity of the Delaunay algorithm without sorting and block processing is , it takes more than 30 minutes to generate a triangular mesh; after sorting the blocks, the number of blocks m is 20, and the complexity of the Delaunay algorithm is ), it takes more than 1.5 minutes to process multiple target block point clouds and generate multiple target triangular meshes according to the Delaunay algorithm. After blocking, the Delaunay algorithm does not need to judge complex topological relationships, and does not need to know the adjacent relationships of points, edges, and triangles. The algorithm complexity is reduced by 19.98 times.

[0084] Figure 3 An example schematic diagram of a target segmented point cloud according to an embodiment of the present disclosure is shown.

[0085] like Figure 3 As shown, the embodiment includes a sorted point cloud 310, the number of blocks is 6, and the sorted point cloud is divided into blocks based on the local sparsity of the sorted point cloud and the number of blocks to obtain multiple initial block point clouds 320; the position area may include 310a, 310b, and 310c. When the local sparsity of the position area is less than the preset sparsity threshold, such as the position areas 310a and 310c, the target points located in the position area in the sorted point cloud 310 are evenly divided into blocks to obtain multiple first block point clouds, such as the first block point clouds 320a, 320b, 320e, and 320f; when the local sparsity of the position area is greater than or equal to the preset sparsity threshold, such as the position area 310b, the target points located in the position area in the sorted point cloud are non-uniformly divided into blocks based on the number of blocks to obtain multiple second block point clouds, such as the second block point clouds 320c and 320d, wherein, The first block point cloud includes 9 target points, the second block point cloud includes 3 target points, and the number of target points in the second block point cloud 320d is the same as that in the first block point cloud 320a. Based on the point cloud overlap parameter, multiple initial block point clouds are overlapped with each other to obtain target block point clouds 330 corresponding to each of the multiple initial block data.

[0086] According to the embodiments of the present disclosure, when the number of target points is huge, sorting and processing multiple target points in blocks can greatly reduce the time and algorithm complexity of generating the target triangular mesh by the Delaunay algorithm, thereby improving the rendering efficiency of the target rendering section.

[0087] According to an embodiment of the present disclosure, the number of blocks is determined based on the following operations:

[0088] The number of blocks is determined based on the relationship between the number of blocks and the complexity of the algorithm, the number of target points, and the upper limit of the number of blocks.

[0089] According to an embodiment of the present disclosure, the relationship between the number of blocks and the algorithm complexity is: the more blocks there are, the lower the algorithm complexity. The constraint formula between the number of blocks and the algorithm complexity can be used to constrain the relationship, for example, , n is the number of target points, and m is the number of blocks.

[0090] According to an embodiment of the present disclosure, the upper limit value of the number of blocks represents the maximum number of initial block point clouds.

[0091] According to an embodiment of the present disclosure, the number of blocks is determined by constraining the number of target points and the upper limit of the number of target points in each initial block point cloud, the upper limit of the number of blocks, and the relationship between the number of blocks and the complexity of the algorithm.

[0092] According to an embodiment of the present disclosure, acquiring a plurality of target points located at a target cutting position includes:

[0093] Acquire multiple initial points located at the target cutting position; when the density of the multiple initial points is less than a preset density threshold, acquire at least one associated point located at the associated cutting position, wherein the target cutting position is adjacent to the associated cutting position; compress the at least one associated point to the target cutting position to obtain a compressed point cloud; obtain multiple target points corresponding to the target cutting position based on the compressed point cloud and the multiple initial points.

[0094] According to an embodiment of the present disclosure, the target cutting position is adjacent to the associated cutting position, and the associated cutting position represents an adjacent cutting position of the target cutting position. The associated point is located on a cutting plane corresponding to the associated cutting position.

[0095] For example, the preset density threshold is 0.8, and multiple initial points located on the cut surface of 50% of the target cutting position are obtained. When the density of the multiple initial points is less than the preset density threshold 0.8, one or more associated points corresponding to 45% of the associated cutting position are obtained.

[0096] According to an embodiment of the present disclosure, points on the cutting positions between the associated cutting position and the target cutting position may also be obtained as associated points. For example, points on the cutting positions 46%, 47%, 48%, and 49% between the associated cutting position 45% and the target cutting position 50% may be used as associated points.

[0097] According to an embodiment of the present disclosure, all associated points are compressed to the target cutting position to obtain a compressed point cloud. Based on the compressed point cloud and multiple initial points, multiple target points corresponding to the target cutting position are formed. The adjacent cutting position can be determined by continuously expanding the adjacent distance and then compressing the associated points until the density of the multiple target points corresponding to the target cutting position is greater than or equal to a preset density threshold.

[0098] According to an embodiment of the present disclosure, when the density of the multiple initial points is greater than or equal to a preset density threshold, compression processing is not required.

[0099] According to the embodiments of the present disclosure, the associated points are compressed along the cutting direction, thereby ensuring that the density of multiple target points corresponding to the target cutting position meets a preset density threshold, making the target rendering section display clearer.

[0100] Figure 4 An example schematic diagram of compressing association points according to an embodiment of the present disclosure is shown.

[0101] like Figure 4 As shown, multiple initial points 420 located at the target cutting position are obtained; at least one associated point 410 located at the associated cutting position is obtained; at least one associated point 410 is compressed to the target cutting position to obtain a compressed point cloud; based on the compressed point cloud and the multiple initial points, multiple target points 430 corresponding to the target cutting position are obtained.

[0102] According to an embodiment of the present disclosure, acquiring target point cloud data of each of a plurality of target points located at a target cutting position further includes:

[0103] Acquire initial point cloud data of multiple target points located at the target cutting position, wherein the initial point cloud data includes pressure information of the target points; determine an upper pressure limit value and a lower pressure limit value according to the pressure information of each of the multiple target points; normalize the initial point cloud data according to the upper pressure limit value and the lower pressure limit value to obtain target point cloud data.

[0104] According to an embodiment of the present disclosure, the pressure information of each of the multiple target points on the cut surface at the target cutting position is obtained, and the upper pressure limit value and the lower pressure limit value are determined from the pressure information of each of the multiple target points. The upper pressure limit value represents the maximum pressure value, and the lower pressure limit value represents the minimum pressure value.

[0105] According to an embodiment of the present disclosure, based on the upper pressure limit and the lower pressure limit, a normalization algorithm is used to normalize the pressure information of each of the plurality of target points to obtain target point cloud data. The target point cloud data includes the normalized pressure information.

[0106] For example, the pressure information of target point 1 is 0Pa, the pressure information of target point 2 is 5Pa, and the pressure information of target point 3 is 10Pa. The upper limit of pressure is 0Pa and the lower limit of pressure is 10Pa, and the normalized pressure information is 0, 0.5, and 1 respectively. When performing cross-section rendering, different colors can be displayed according to the normalized pressure information, and the target rendering cross-section is clearer.

[0107] According to an embodiment of the present disclosure, the cross-section display method based on point cloud data further includes:

[0108] After the target rendering section is generated, the compressed point cloud is decompressed to obtain at least one first decompressed point, wherein the first decompressed point represents an associated point corresponding to the associated cutting position.

[0109] According to an embodiment of the present disclosure, after generating the target rendering section, the compressed point cloud is decompressed to obtain at least one first decompressed point, and the first decompressed point is restored to the associated cutting position, thereby ensuring the authenticity and validity of obtaining the target point at the next target cutting position.

[0110] Based on the above-mentioned section display method based on point cloud data, the present disclosure also provides a section display device based on point cloud data. Figure 5 The device is described in detail.

[0111] Figure 5 A structural block diagram of a section display device based on point cloud data according to an embodiment of the present disclosure is shown.

[0112] like Figure 5 As shown, the cross-section display device 500 based on point cloud data of this embodiment includes an acquisition module 510 , a sorting module 520 , a blocking module 530 , a generation module 540 , and a rendering module 550 .

[0113] The acquisition module 510 is used to acquire target point cloud data of each of the plurality of target points located at the target cutting position, wherein the target point cloud data includes position information. In one embodiment, the acquisition module 510 can be used to perform the operation S110 described above, which will not be described in detail here.

[0114] The sorting module 520 is used to sort the multiple target points based on the sorting algorithm and the position information to obtain a sorted point cloud, wherein the sorted point cloud represents a set of multiple target points having a sorting relationship. In one embodiment, the sorting module 520 can be used to perform the operation S120 described above, which will not be repeated here.

[0115] The block module 530 is used to block the sorted point cloud based on the local sparsity and the number of blocks of the sorted point cloud to obtain multiple initial block point clouds, wherein the initial block point cloud includes at least one target point. In one embodiment, the block module 530 can be used to perform the operation S130 described above, which will not be repeated here.

[0116] The generating module 540 is used to process the multiple initial block point clouds respectively according to the Delaunay algorithm to obtain the target triangular meshes corresponding to the multiple initial block point clouds. In one embodiment, the generating module 540 can be used to perform the operation S140 described above, which will not be repeated here.

[0117] The rendering module 550 is used to render the multiple target triangular meshes using a surface rendering algorithm to obtain a target rendering section for the target cutting position. In one embodiment, the rendering module 550 can be used to perform the operation S150 described above, which will not be described in detail here.

[0118] According to an embodiment of the present disclosure, the generation module 540 includes a first generation submodule, a second generation submodule, a third generation submodule, and a fourth generation submodule.

[0119] The first generation submodule is used to process multiple initial block point clouds according to the Delaunay algorithm to obtain initial triangular meshes corresponding to each of the multiple initial block point clouds.

[0120] The second generation submodule is used to determine the point cloud overlap parameters according to the gap state information between the multiple initial triangular meshes.

[0121] The third generation submodule is used to perform overlapping processing on multiple initial block point clouds based on point cloud overlap parameters to obtain target block point clouds corresponding to each of the multiple initial block data, wherein the number of overlapping points between the multiple target block point clouds is the same.

[0122] The fourth generation submodule is used to process the multiple target block point clouds according to the Delaunay algorithm to obtain the target triangular meshes corresponding to the multiple target block point clouds.

[0123] According to an embodiment of the present disclosure, the blocking module 530 includes a first blocking submodule, a second blocking submodule and a third blocking submodule.

[0124] The first blocking submodule is used to determine the local sparsity degree of at least one location area according to the location information of the sorted point cloud.

[0125] The second blocking submodule is used to evenly block the target points located in the sorted point cloud based on the number of blocks for each location area in at least one location area, when the local sparsity of the location area is less than a preset sparsity threshold, to obtain multiple first block point clouds, wherein each first block point cloud contains the same number of target points.

[0126] The third blocking submodule is used to perform non-uniform blocking on the target points located in the location area in the sorted point cloud based on the number of blocks when the local sparsity of the location area is greater than or equal to a preset sparsity threshold, so as to obtain multiple second block point clouds, wherein the number of target points contained in the multiple second block point clouds is different.

[0127] According to an embodiment of the present disclosure, the acquisition module 510 includes a first acquisition submodule, a second acquisition submodule, a third acquisition submodule and a fourth acquisition submodule.

[0128] The first acquisition submodule is used to acquire a plurality of initial points located at the target cutting position.

[0129] The second acquisition submodule is used to acquire at least one associated point located at an associated cutting position when the density of the multiple initial points is less than a preset density threshold, wherein the target cutting position is adjacent to the associated cutting position.

[0130] The third acquisition submodule is used to compress at least one associated point to a target cutting position to obtain a compressed point cloud.

[0131] The fourth acquisition submodule is used to obtain multiple target points corresponding to the target cutting position according to the compressed point cloud and the multiple initial points.

[0132] According to an embodiment of the present disclosure, the acquisition module 510 further includes a fifth acquisition submodule, a sixth acquisition submodule and a seventh acquisition submodule.

[0133] The fifth acquisition submodule is used to acquire initial point cloud data of multiple target points located at the target cutting position, wherein the initial point cloud data includes pressure information of the target points.

[0134] The sixth acquisition submodule is used to determine the upper pressure limit and the lower pressure limit according to the pressure information of each of the multiple target points.

[0135] The seventh acquisition submodule is used to normalize the initial point cloud data according to the pressure upper limit value and the pressure lower limit value to obtain the target point cloud data.

[0136] According to an embodiment of the present disclosure, the section display device 500 based on point cloud data further includes a decompression module.

[0137] The decompression module is used to decompress the compressed point cloud after generating the target rendering section to obtain at least one first decompressed point, wherein the first decompressed point represents an associated point corresponding to the associated cutting position.

[0138] According to the embodiments of the present invention, any one or more of the modules, submodules, units, and subunits, or at least part of the functions of any one of them can be implemented in one module. According to the embodiments of the present invention, any one or more of the modules, submodules, units, and subunits can be split into multiple modules for implementation. According to the embodiments of the present invention, any one or more of the modules, submodules, units, and subunits can be at least partially implemented as hardware circuits, such as field programmable gate arrays (FPGAs), programmable logic arrays (PLAs), systems on chips, systems on substrates, systems on packages, application specific integrated circuits (ASICs), or can be implemented by hardware or firmware in any other reasonable way of integrating or packaging circuits, or can be implemented in any one of the three implementation methods of software, hardware, and firmware, or in any appropriate combination of any of them. Alternatively, according to the embodiments of the present invention, one or more of the modules, submodules, units, and subunits can be at least partially implemented as computer program modules, and when the computer program modules are run, the corresponding functions can be performed.

[0139] For example, any multiple of the acquisition module 510, the sorting module 520, the blocking module 530, the generation module 540, and the rendering module 550 can be combined in one module / unit / sub-unit for implementation, or any one of the modules / units / sub-units can be split into multiple modules / units / sub-units. Alternatively, at least part of the functions of one or more of these modules / units / sub-units can be combined with at least part of the functions of other modules / units / sub-units and implemented in one module / unit / sub-unit. According to an embodiment of the present disclosure, at least one of the acquisition module 510, the sorting module 520, the blocking module 530, the generation module 540, and the rendering module 550 can be at least partially implemented as a hardware circuit, such as a field programmable gate array (FPGA), a programmable logic array (PLA), a system on a chip, a system on a substrate, a system on a package, an application specific integrated circuit (ASIC), or can be implemented by hardware or firmware such as any other reasonable way of integrating or packaging the circuit, or implemented in any one of the three implementation methods of software, hardware, and firmware or in a suitable combination of any of them. Alternatively, at least one of the acquisition module 510, the sorting module 520, the blocking module 530, the generation module 540, and the rendering module 550 may be at least partially implemented as a computer program module, and when the computer program module is executed, the corresponding function may be executed.

[0140] Figure 6 A block diagram of an electronic device suitable for implementing a slice display method based on point cloud data according to an embodiment of the present invention is shown.

[0141] Figure 6The electronic device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present invention.

[0142] like Figure 6 As shown, a computer electronic device 600 according to an embodiment of the present invention includes a processor 601, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 602 or a program loaded from a storage part 608 into a random access memory (RAM) 603. The processor 601 may include, for example, a general-purpose microprocessor (e.g., a CPU), an instruction set processor and / or a related chipset and / or a special-purpose microprocessor (e.g., an application-specific integrated circuit (ASIC)), etc. The processor 601 may also include an onboard memory for caching purposes. The processor 601 may include a single processing unit or multiple processing units for performing different actions of the method flow according to an embodiment of the present invention.

[0143] In RAM 603, various programs and data required for the operation of electronic device 600 are stored. Processor 601, ROM 602 and RAM 603 are connected to each other via bus 604. Processor 601 performs various operations of the method flow according to the embodiment of the present invention by executing the programs in ROM 602 and / or RAM 603. It should be noted that the program can also be stored in one or more memories other than ROM 602 and RAM 603. Processor 601 can also perform various operations of the method flow according to the embodiment of the present invention by executing the programs stored in one or more memories.

[0144] Optionally, the electronic device 600 may further include an input / output (I / O) interface 605, which is also connected to the bus 604. The electronic device 600 may further include one or more of the following components connected to the input / output (I / O) interface 605: an input portion 606 including a keyboard, a mouse, etc.; an output portion 607 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage portion 608 including a hard disk, etc.; and a communication portion 609 including a network interface card such as a LAN card, a modem, etc. The communication portion 609 performs communication processing via a network such as the Internet. A drive 610 is also connected to the input / output (I / O) interface 605 as needed. A removable medium 611, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 610 as needed, so that a computer program read therefrom is installed into the storage portion 608 as needed.

[0145] Optionally, the method flow according to the embodiment of the present invention can be implemented as a computer software program. For example, an embodiment of the present invention includes a computer program product, which includes a computer program carried on a computer-readable storage medium, and the computer program contains a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from the network through the communication part 609, and / or installed from the removable medium 611. When the computer program is executed by the processor 601, the above-mentioned functions defined in the system of the embodiment of the present invention are executed. Optionally, the system, equipment, device, module, unit, etc. described above can be implemented by a computer program module.

[0146] The present invention also provides a computer-readable storage medium, which may be included in the device / apparatus / system described in the above embodiment; or may exist independently without being assembled into the device / apparatus / system. The above computer-readable storage medium carries one or more programs, and when the above one or more programs are executed, the cross-section display method based on point cloud data according to the embodiment of the present invention is implemented.

[0147] Optionally, the computer-readable storage medium may be a non-volatile computer-readable storage medium. For example, it may include, but is not limited to: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof. In the present invention, a computer-readable storage medium may be any tangible medium containing or storing a program that may be used by or in combination with an instruction execution system, apparatus, or device.

[0148] For example, optionally, the computer-readable storage medium may include the ROM 602 and / or the RAM 603 described above and / or one or more memories other than the ROM 602 and the RAM 603 .

[0149] An embodiment of the present invention also includes a computer program product, which includes a computer program, which contains program code for executing the method provided by the embodiment of the present invention. When the computer program product runs on an electronic device, the program code is used to enable the electronic device to implement the section display method based on point cloud data provided by the embodiment of the present invention.

[0150] When the computer program is executed by the processor 601, the above functions defined in the system / device of the embodiment of the present invention are performed. Optionally, the system, device, module, unit, etc. described above can be implemented by a computer program module.

[0151] In one embodiment, the computer program may rely on tangible storage media such as optical storage devices, magnetic storage devices, etc. In another embodiment, the computer program may also be transmitted and distributed in the form of signals on a network medium, and downloaded and installed through the communication part 609, and / or installed from a removable medium 611. The program code contained in the computer program may be transmitted using any appropriate network medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.

[0152] Optionally, the program code for executing the computer program provided by the embodiment of the present invention can be written in any combination of one or more programming languages, specifically, these computing programs can be implemented using high-level process and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages ​​include, but are not limited to, such as Java, C++, python, "C" language or similar programming languages. The program code can be executed entirely on the user computing device, partially on the user device, partially on the remote computing device, or entirely on the remote computing device or server. In the case of a remote computing device, the remote computing device can be connected to the user computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computing device (e.g., using an Internet service provider to connect through the Internet).

[0153] The flowcharts and block diagrams in the accompanying drawings illustrate the possible implementation architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each box in the flowchart or block diagram may represent a module, a program segment, or a part of a code, and the above-mentioned module, program segment, or a part of the code contains one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box may also occur in an order different from that marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flowchart, and the combination of boxes in the block diagram or flowchart, can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions. It can be understood by those skilled in the art that the features recorded in the various embodiments of the present disclosure can be combined and / or combined in a variety of ways, even if such a combination or combination is not explicitly recorded in the present disclosure. In particular, without departing from the spirit and teaching of the present disclosure, the features described in the various embodiments of the present disclosure may be combined and / or combined in a variety of ways. All of these combinations and / or combinations fall within the scope of the present disclosure.

[0154] The embodiments of the present disclosure are described above. However, these embodiments are only for illustrative purposes and are not intended to limit the scope of the present disclosure. Although the embodiments are described above, this does not mean that the measures in the various embodiments cannot be used in combination to advantage. Without departing from the scope of the present disclosure, those skilled in the art may make a variety of substitutions and modifications, which should all fall within the scope of the present disclosure.

Claims

1. A section display method based on point cloud data, characterized in that: The method comprises: Obtain target point cloud data of each of a plurality of target points located at a target cutting position, wherein the target point cloud data includes position information: Based on the sorting algorithm and the position information, sorting the plurality of target points to obtain a sorted point cloud, wherein the sorted point cloud represents a set of the plurality of target points having a sorting relationship; Based on the local sparsity degree and the number of blocks of the sorted point cloud, the sorted point cloud is divided into blocks to obtain a plurality of initial block point clouds, wherein the initial block point clouds include at least one of the target points; The multiple initial block point clouds are processed respectively according to the Delaunay algorithm to obtain target triangular meshes corresponding to the multiple initial block point clouds; The plurality of target triangular meshes are rendered using a surface rendering algorithm to obtain a target rendering section for the target cutting position.

2. The method according to claim 1, characterized in that The multiple initial block point clouds are processed respectively according to the Delaunay algorithm to obtain target triangular meshes corresponding to the multiple initial block point clouds, including: Processing the plurality of initial block point clouds according to the Delaunay algorithm to obtain initial triangular meshes corresponding to the plurality of initial block point clouds; Determining a point cloud overlap parameter according to gap state information between the plurality of initial triangular meshes; Performing overlapping processing on the multiple initial block point clouds based on the point cloud overlap parameter to obtain target block point clouds corresponding to the multiple initial block data, wherein the number of overlapping points between the multiple target block point clouds is the same; The plurality of target block point clouds are processed according to the Delaunay algorithm to obtain target triangular meshes corresponding to the plurality of target block point clouds.

3. The method according to claim 1, characterized in that The multiple initial block point clouds include a first block point cloud and a second block point cloud, Wherein, based on the local sparsity degree and the number of blocks of the sorted point cloud, the sorted point cloud is divided into blocks to obtain a plurality of initial block point clouds, including: determining a local sparsity degree of at least one location region according to the location information of the sorted point cloud; For each location area in at least one of the location areas, when the local sparsity of the location area is less than a preset sparsity threshold, the target points located in the location area in the sorted point cloud are evenly divided into blocks based on the number of blocks to obtain a plurality of first block point clouds, wherein each of the first block point clouds contains the same number of target points; When the local sparsity of the location area is greater than or equal to a preset sparsity threshold, the target points located in the location area in the sorted point cloud are non-uniformly blocked based on the number of blocks to obtain a plurality of second-block point clouds, wherein the plurality of second-block point clouds contain a different number of target points.

4. The method according to claim 3, characterized in that: The number of blocks is determined based on the following operations: The number of blocks is determined according to the relationship between the number of blocks and the complexity of the algorithm, the number of target points, and the upper limit of the number of blocks.

5. The method according to claim 1, characterized in that Acquiring multiple target points located at the target cutting position includes: Acquire a plurality of initial points located at the target cutting position; When the density of the plurality of initial points is less than a preset density threshold, acquiring at least one associated point located at an associated cutting position, wherein the target cutting position is adjacent to the associated cutting position; Compressing the at least one associated point onto the target cutting position to obtain a compressed point cloud; According to the compressed point cloud and the multiple initial points, multiple target points corresponding to the target cutting position are obtained.

6. The method according to claim 5, characterized in that Acquiring target point cloud data of each of the plurality of target points located at the target cutting position further includes: Acquire initial point cloud data of a plurality of target points located at the target cutting position, wherein the initial point cloud data includes pressure information of the target points; Determining an upper pressure limit and a lower pressure limit according to the pressure information of each of the plurality of target points; The initial point cloud data is normalized according to the pressure upper limit value and the pressure lower limit value to obtain the target point cloud data.

7. The method according to claim 5, characterized in that The method further comprises: After generating the target rendering section, the compressed point cloud is decompressed to obtain at least one first decompressed point, wherein the first decompressed point represents an associated point corresponding to the associated cutting position.

8. A cross-sectional display device based on point cloud data, characterized in that: The device comprises: The acquisition module is used to acquire target point cloud data of each of the multiple target points located at the target cutting position, wherein the target point cloud data includes position information: A sorting module, used for sorting the plurality of target points based on a sorting algorithm and the position information to obtain a sorted point cloud, wherein the sorted point cloud represents a set of the plurality of target points having a sorting relationship; A blocking module, configured to block the sorted point cloud based on the local sparsity and the number of blocks of the sorted point cloud to obtain a plurality of initial block point clouds, wherein the initial block point clouds include at least one of the target points; A generating module, used for processing the plurality of initial block point clouds respectively according to the Delaunay algorithm to obtain target triangular meshes corresponding to the plurality of initial block point clouds respectively; The rendering module is used to render the plurality of target triangular meshes using a surface rendering algorithm to obtain a target rendering section for the target cutting position.

9. An electronic device, comprising: one or more processors; a memory for storing one or more programs, The method is characterized in that when one or more programs are executed by one or more processors, the one or more processors are caused to implement the method according to any one of claims 1 to 7.

10. A computer-readable storage medium having executable instructions stored thereon, characterized in that: When the instructions are executed by a processor, the processor implements the method of any one of claims 1 to 7.

Citation Information

Patent Citations

  • Massive point cloud data processing and visualization method and system

    CN113781631A

  • Engineering three-dimensional topographic data cutting fusion method and system

    CN114708414A

  • Point cloud attribute coding method, point cloud decoding method and terminal

    CN116233385A