Dynamic point cloud data compression method, device, computer equipment and medium

By performing multiple equal divisions and entropy coding on the target space and utilizing the temporal correlation and spatial distribution of dynamic point cloud data, the problem of low compression efficiency of multi-frame dynamic point cloud data is solved, and efficient point cloud data storage and intelligent robot applications are achieved.

CN119562078BActive Publication Date: 2025-09-26PING AN TECH (SHENZHEN) CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411724515.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-27
Publication Date
2025-09-26
Estimated Expiration
2044-11-27

AI Technical Summary

Technical Problem

Existing three-dimensional point cloud data compression methods are inefficient when dealing with multi-frame dynamic point cloud data, resulting in increased storage pressure and affecting the applicability of intelligent robots in medical scenarios.

Method used

The target space is divided into multiple subspaces, and the associated information is extracted through sorting and prediction models for entropy coding to form descriptive information and compress it, making full use of the temporal correlation and spatial distribution of dynamic point cloud data.

Benefits of technology

It improves the compression efficiency and compression ratio of dynamic point cloud data, reduces the storage pressure in medical scenarios, and enhances the applicability of intelligent robots in medical scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119562078B_ABST
    Figure CN119562078B_ABST
Patent Text Reader

Abstract

The present invention relates to the technical field of point cloud data compression, and in particular to a method, device, computer equipment, and medium for compressing dynamic point cloud data. The method divides a target space into subspaces, counts the number of data containing point cloud data in the subspaces, sorts them using the number of data as a spatial identifier, obtains a primary identifier sequence, determines a subspace that meets preset conditions as a target subspace, determines the sorting position of the target subspace, obtains a secondary identifier sequence of the target subspace using the above steps, forms target description information based on the sorting positions and secondary identifier sequences of all target subspaces, obtains a target probability distribution based on the target description information and reference description information, encodes the target probability distribution as a compression result, obtains a refined spatial domain description through spatial averaging, and extracts the time domain correlation of dynamic point cloud data, thereby improving the compression efficiency and compression rate of dynamic point cloud data, thereby reducing the storage pressure of point cloud modeling in medical scenarios.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of point cloud data compression, and in particular to a method, device, computer equipment and medium for compressing dynamic point cloud data. Background Art

[0002] At present, three-dimensional point cloud data can be widely used in architectural modeling scenarios to obtain high-precision three-dimensional information. For example, in medical scenarios, intelligent robots are used to model the interior space of medical buildings, thereby providing a three-dimensional model space of the medical scene as the basis for the intelligent robot's cruising, addressing and other functions. The above-mentioned intelligent robots can support location guidance within the medical scene, assist in taking medicine and other functions.

[0003] However, high precision also means that the amount of 3D point cloud data is large. Correspondingly, the point cloud data occupies a large amount of storage space. When using dynamic 3D point cloud data, the storage pressure of the point cloud data will be further increased. Therefore, when storing, transmitting and other operations on 3D point cloud data, it is usually necessary to compress the 3D point cloud data before processing.

[0004] However, the existing 3D point cloud data compression method can only be used for single-frame 3D point cloud data. When faced with multi-frame dynamic 3D point cloud data, the multi-frame 3D point cloud data is still divided into frames and then processed frame by frame, resulting in low compression efficiency of dynamic point cloud data. Therefore, how to improve the compression efficiency of dynamic point cloud data, thereby reducing the storage pressure of point cloud modeling in medical scenarios and improving the applicability of intelligent robots in medical scenarios has become an urgent problem to be solved. Summary of the Invention

[0005] In view of this, embodiments of the present invention provide a method, apparatus, computer device, and medium for compressing dynamic point cloud data to solve the problem of low compression efficiency of dynamic point cloud data.

[0006] In a first aspect, an embodiment of the present invention provides a method for compressing dynamic point cloud data, the method comprising:

[0007] Obtain current point cloud data in the target space, divide the target space into N subspaces, and count the number of point cloud data in each subspace, where N is an integer greater than one;

[0008] The number of data in each subspace is used as the space identifier of the corresponding subspace, and all space identifiers are sorted to obtain a primary identifier sequence corresponding to the target space;

[0009] Obtaining a preset identification threshold, determining a subspace corresponding to a spatial identification greater than the preset identification threshold as a target subspace, and determining a sorting position of the target subspace from the primary identification sequence;

[0010] The target subspace is divided into N subspaces, and the number of data containing point cloud data in each subspace is obtained by counting. The number of data in each subspace is used as the spatial identifier of the corresponding subspace, and all spatial identifiers are sorted to obtain a secondary identifier sequence corresponding to the target subspace;

[0011] forming description information describing the target subspace according to the sorting position of the target subspace and the secondary identification sequence, splicing the description information of all target subspaces according to the sorting positions of all target subspaces in the primary identification sequence to obtain a splicing result, and determining the splicing result as the target description information of the current point cloud data;

[0012] Obtain reference description information of the point cloud data at a previous moment of the current point cloud data, use a preset prediction model to extract association information between the target description information and the reference description information, and obtain a target probability distribution of the target description information based on the association information, perform entropy encoding on the target probability distribution to obtain an encoding result, and determine that the encoding result is a compression result of the current point cloud data.

[0013] In a second aspect, an embodiment of the present invention provides a compression device for dynamic point cloud data, the compression device comprising:

[0014] A quantity statistics module is used to obtain the current point cloud data in the target space, divide the target space into N subspaces, and count the number of data containing point cloud data in each subspace, where N is an integer greater than one;

[0015] A first sorting module is configured to use the amount of data in each subspace as a space identifier of the corresponding subspace, sort all space identifiers, and obtain a primary identifier sequence corresponding to the target space;

[0016] a position determination module, configured to obtain a preset identification threshold, determine a subspace corresponding to a spatial identification greater than the preset identification threshold as a target subspace, and determine a sorting position of the target subspace from the primary identification sequence;

[0017] A second sorting module is used to divide the target subspace into N subspaces, count the number of data containing point cloud data in each subspace, use the number of data in each subspace as the spatial identifier of the corresponding subspace, sort all spatial identifiers, and obtain a secondary identifier sequence corresponding to the target subspace;

[0018] a space description module, configured to form description information describing the target subspace according to the sorting position of the target subspace and the secondary identification sequence, splice the description information of all target subspaces according to the sorting positions of all target subspaces in the primary identification sequence to obtain a splicing result, and determine the splicing result as the target description information of the current point cloud data;

[0019] The point cloud compression module is used to obtain reference description information of the point cloud data at the previous moment of the current point cloud data, use a preset prediction model to extract the association information between the target description information and the reference description information, and obtain the target probability distribution of the target description information based on the association information, perform entropy coding on the target probability distribution to obtain a coding result, and determine that the coding result is the compression result of the current point cloud data.

[0020] In a third aspect, an embodiment of the present invention provides a computer device, comprising a processor, a memory, and a computer program stored in the memory and executable on the processor, wherein the processor implements the compression method described in the first aspect when executing the computer program.

[0021] In a fourth aspect, an embodiment of the present invention provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the compression method as described in the first aspect is implemented.

[0022] Compared with the prior art, the embodiments of the present invention have the following beneficial effects:

[0023] Obtain the current point cloud data in the target space, divide the target space into N subspaces, and obtain the number of data containing point cloud data in each subspace by counting, use the number of data in each subspace as the spatial identifier of the corresponding subspace, sort all spatial identifiers, and obtain the first-level identifier sequence corresponding to the target space, obtain the preset identifier threshold, determine the subspace corresponding to the spatial identifier greater than the preset identifier threshold as the target subspace, determine the sorting position of the target subspace from the first-level identifier sequence, divide the target subspace into N subspaces, and obtain the number of data containing point cloud data in each subspace by counting, use the number of data in each subspace as the spatial identifier of the corresponding subspace, sort all spatial identifiers, and obtain the second-level identifier sequence corresponding to the target subspace. According to the sorting position of the target subspace and the second-level identifier sequence, form a description of the target subspace. According to the sorting position of all target subspaces in the first-level identifier sequence, The description information of all target subspaces is spliced ​​to obtain a splicing result, and the splicing result is determined to be the target description information of the current point cloud data, and the reference description information of the point cloud data at the previous moment of the current point cloud data is obtained. The preset prediction model is used to extract the correlation information between the target description information and the reference description information, and based on the correlation information, the target probability distribution of the target description information is obtained, and the target probability distribution is entropy encoded to obtain the encoding result, and the encoding result is determined to be the compression result of the current point cloud data. The three-dimensional space to which the current point cloud data belongs is spatially averaged multiple times, so as to accurately obtain the spatial domain description information of each point in the current point cloud data, and the reference description information and the target description information are combined for distribution prediction, and the time domain correlation of the dynamic point cloud data is fully utilized, thereby improving the compression efficiency and compression ratio of the dynamic point cloud data, thereby reducing the storage pressure of point cloud modeling in medical scenarios and improving the applicability of intelligent robots in medical scenarios. BRIEF DESCRIPTION OF THE DRAWINGS

[0024] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.

[0025] Figure 1 This is a schematic diagram of an application environment of a dynamic point cloud data compression method provided by the first embodiment of the present invention;

[0026] Figure 2 1 is a flow chart of a method for compressing dynamic point cloud data provided by the first embodiment of the present invention;

[0027] Figure 3 1 is a schematic structural diagram of a dynamic point cloud data compression device provided by the second embodiment of the present invention;

[0028] Figure 4 This is a structural diagram of a computer device provided in Example 3 of the present invention. DETAILED DESCRIPTION

[0029] In the following description, specific details such as particular system structures and techniques are provided for purposes of illustration, not limitation, to facilitate a thorough understanding of the embodiments of the present invention. However, it will be apparent to those skilled in the art that the present invention may be practiced in other embodiments without these specific details. In other cases, detailed descriptions of well-known systems, devices, circuits, and methods are omitted so as not to obscure the description of the present invention with unnecessary detail.

[0030] It should be understood that when used in the present specification and the appended claims, the term "comprising" indicates the presence of described features, integers, steps, operations, elements and / or components, but does not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components and / or groups thereof.

[0031] It will also be understood that the term "and / or" used in the present description and appended claims refers to and includes any and all possible combinations of one or more of the associated listed items.

[0032] As used in the present specification and the appended claims, the term "if" may be interpreted as "when" or "upon" or "in response to determining" or "in response to detecting," depending on the context. Similarly, the phrase "if it is determined" or "if [described condition or event] is detected" may be interpreted as meaning "upon determination" or "in response to determining" or "upon detection of [described condition or event]" or "in response to detecting [described condition or event]," depending on the context.

[0033] In addition, in the description of the present specification and the appended claims, the terms "first", "second", "third", etc. are only used to distinguish the descriptions and cannot be understood as indicating or implying relative importance.

[0034] References to "one embodiment" or "some embodiments" in the present specification mean that a particular feature, structure, or characteristic described in conjunction with that embodiment is included in one or more embodiments of the present invention. Thus, phrases such as "in one embodiment," "in some embodiments," "in other embodiments," and "in yet other embodiments" appearing in various places in this specification do not necessarily refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically emphasized. The terms "including," "comprising," "having," and variations thereof mean "including but not limited to," unless otherwise specifically emphasized.

[0035] Embodiments of the present invention can acquire and process relevant data based on artificial intelligence technology. Artificial Intelligence (AI) refers to the theories, methods, techniques, and application systems that use digital computers or machines controlled by digital computers to simulate, extend, and expand human intelligence, perceive the environment, acquire knowledge, and use that knowledge to achieve optimal results.

[0036] Fundamental AI technologies generally include sensors, dedicated AI chips, cloud computing, distributed storage, big data processing, operating / interaction systems, and mechatronics. AI software technologies primarily encompass computer vision, robotics, biometrics, speech processing, natural language processing, and machine learning / deep learning.

[0037] It should be understood that the order of execution of the steps in the following embodiments does not necessarily mean the order in which they are executed. The order in which each process is executed should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.

[0038] In order to illustrate the technical solution of the present invention, specific embodiments are provided below.

[0039] The first embodiment of the present invention provides a method for compressing dynamic point cloud data, which can be applied in the following situations: Figure 1In an application environment, clients communicate with servers. Clients include, but are not limited to, PDAs, desktop computers, laptops, ultra-mobile personal computers (UMPCs), netbooks, cloud-based terminal devices, personal digital assistants (PDAs), and other computer devices. Servers can be standalone servers or cloud servers that provide basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, content delivery networks (CDNs), and big data and artificial intelligence platforms.

[0040] The server and client can be deployed in a variety of application scenarios, such as intelligent transportation, geological mapping, and architectural modeling. For example, in architectural modeling, specifically modeling the interior of a medical building, the client can connect to a point cloud acquisition device. This equipment can include lidar, depth cameras, binocular cameras, and multi-view cameras, with lidar being a common device. For example, in the medical building interior modeling scenario, the point cloud acquisition device can be deployed on an intelligent robot to collect point cloud data within the medical setting. This dynamic point cloud data can then be used to model the interior of the medical building, serving as the foundation for the intelligent robot to implement functions such as location guidance and medication retrieval assistance.

[0041] See also Figure 2 , is a flow chart of a method for compressing dynamic point cloud data provided by the first embodiment of the present invention. The above compression method can be applied to Figure 1 The server in the server, the computer device corresponding to the server is connected to the client to obtain the current point cloud data from the client. The current point cloud data can refer to the three-dimensional point cloud data collected in real time. The client has a certain storage function and can store at least two frames of three-dimensional point cloud data. The computer device corresponding to the server is deployed with a trained prediction model. The prediction model can be used to predict the probability distribution of point cloud data based on two consecutive frames of point cloud data. Figure 2 As shown, the compression method may include the following steps:

[0042] Step S201 : obtaining current point cloud data in the target space, dividing the target space into N subspaces, and obtaining the number of point cloud data in each subspace by counting.

[0043] Among them, the target space can refer to the three-dimensional space to which the current point cloud data belongs. In this embodiment, it can refer to the three-dimensional space inside the medical building. The current point cloud data can refer to the three-dimensional point cloud data collected in the current frame. The three-dimensional point cloud data usually includes several three-dimensional points. The subspace can refer to a part of the target space. The subspace is also a three-dimensional space. The number of data can refer to the number of three-dimensional points contained in the subspace. N is an integer greater than one.

[0044] Specifically, in this embodiment, N can be set to 8. The implementer can adjust the value of N according to actual conditions. It should be noted that the N subspaces obtained by equal division do not overlap with each other.

[0045] In the medical building modeling scenario, the target space may refer to the interior space of the medical building, and the current point cloud data may refer to the medical building point cloud data collected in the interior space of the medical building by the point cloud acquisition device at the current moment. The current medical building point cloud data in the interior space of the medical building is obtained, and the interior space of the medical building is evenly divided into N medical building internal subspaces. The number of data containing the current medical building point cloud data in each medical building internal subspace is statistically obtained.

[0046] The above steps of obtaining the current point cloud data in the target space, dividing the target space into N subspaces, and obtaining the number of data containing point cloud data in each subspace by counting, by dividing the target space, determining the position of the three-dimensional points in the current point cloud data in regular subspaces, thereby performing the three-dimensional point division of the three-dimensional point cloud data in a relatively simple manner, thereby improving the efficiency of dynamic point cloud data compression.

[0047] Step S202 : Taking the data quantity of each subspace as the space identifier of the corresponding subspace, all the space identifiers are sorted to obtain a primary identifier sequence corresponding to the target space.

[0048] The spatial identifier can be used to represent the information of the three-dimensional points in the subspace, and the first-level identifier sequence can be used to represent the position information of the three-dimensional point distribution in the target space.

[0049] In the medical building modeling scenario, the spatial identifier can be used to represent the information containing the three-dimensional medical building point cloud data in the internal subspace of the medical building. The first-level identifier sequence can be used to represent the location information of the distribution of the three-dimensional medical building point cloud data in the internal space of the medical building. The number of data in each internal subspace of the medical building is used as the spatial identifier of the corresponding internal subspace of the medical building. All spatial identifiers are sorted to obtain the first-level identifier sequence corresponding to the internal space of the medical building.

[0050] Optionally, the number of data in each subspace is used as the space identifier of the corresponding subspace, including:

[0051] For the data quantity of any subspace, if the data quantity is greater than a preset quantity threshold, a first preset value is determined as the space identifier of the subspace;

[0052] If the amount of data is less than or equal to the amount threshold, determining a second preset value as the space identifier of the subspace;

[0053] Traverse the data quantity of all subspaces and obtain the space identification of the corresponding subspace.

[0054] The quantity threshold may be used to measure the distribution of three-dimensional points in a subspace, and the first preset value and the second preset value may be used to distinguish subspaces with different three-dimensional point distributions.

[0055] Specifically, in this embodiment, the quantity threshold can be set to 0, that is, if the subspace contains any three-dimensional point, the spatial identification of the subspace is set to the first preset value; if the subspace does not contain any three-dimensional point, the spatial identification of the subspace is set to the second preset value. The first preset value is set to 1, and the second preset value is set to 0. The above quantity threshold, first preset value and second preset value can be adjusted by the implementer according to actual conditions.

[0056] In this embodiment, by setting preset values ​​as space identifiers, the space identifiers are divided into two categories, thereby reducing the complexity of the subsequent identifier sequence formed based on the space identifiers and facilitating the storage of dynamic point cloud data.

[0057] Optionally, all space identifiers are sorted to obtain a first-level identifier sequence corresponding to the target space, including:

[0058] Extract the relative position of each subspace in the target space;

[0059] All space identifiers are sorted according to the preset relative position order to obtain the first-level identifier sequence corresponding to the target space.

[0060] The relative position may represent the position information of the subspace in the target space, and the relative position order may include all relative positions and their corresponding sorted positions.

[0061] Specifically, the target space can be regarded as a three-dimensional structure. For example, integers from 1 to N can be used as relative position marks in the order from top to bottom and from left to right to assign relative positions to each subspace in the target space. For example, the relative position of the subspace in the upper left corner is marked as 1, and the relative position of the subspace in the lower right corner is marked as N. Accordingly, the relative position order can refer to the order of relative position marks from small to large.

[0062] In this embodiment, the spatial identifiers are sorted according to the relative positions of the subspaces in the target space, so that the first-level identifier sequence can include the position association information between the subspaces, thereby improving the first-level identifier sequence's ability to describe the target space.

[0063] The above-mentioned step uses the data quantity of each subspace as the spatial identifier of the corresponding subspace, sorts all the spatial identifiers, and obtains the first-level identifier sequence corresponding to the target space. The first-level identifier sequence is used to describe the distribution information of the three-dimensional points in the target space, so that the complex three-dimensional point information is converted into a concise first-level identifier sequence, which simplifies the description method of dynamic point cloud data and improves the compression efficiency of subsequent dynamic point cloud data.

[0064] Step S203 : obtaining a preset identification threshold, determining the subspace corresponding to the spatial identification greater than the preset identification threshold as the target subspace, and determining the sorting position of the target subspace from the primary identification sequence.

[0065] Among them, the preset identification threshold can be used to determine the subspace that needs to be further divided, the target subspace can refer to the subspace that needs to be further divided, and the sorting position can refer to the position of the spatial identification corresponding to the target subspace in the primary identification sequence.

[0066] Specifically, in this embodiment, following the example of using 0 and 1 as space identifiers in the above embodiment, the preset identification threshold can be set to 0, that is, the subspace containing three-dimensional points is used as the target subspace, and the subspace that does not contain three-dimensional points is not further divided.

[0067] In the medical building modeling scenario, the preset identification threshold can be used to determine the internal subspace of the medical building that needs to be further divided equally. The target subspace can refer to the internal subspace of the medical building that needs to be further divided equally. The sorting position can refer to the position of the spatial identification corresponding to the internal subspace of the medical building that needs to be further divided equally in the primary identification sequence.

[0068] The above steps of obtaining a preset identification threshold, determining the subspace corresponding to the spatial identification greater than the preset identification threshold as the target subspace, and determining the sorting position of the target subspace from the first-level identification sequence effectively determine the target subspace that needs to be further divided, avoid invalid calculations, and at the same time determine the sorting position of the target subspace, that is, determine the spatial position information of the target subspace, which is convenient for the subsequent formation of description information of the target subspace.

[0069] In step S204, the target subspace is divided into N subspaces, and the number of data containing point cloud data in each subspace is counted. The number of data in each subspace is used as the spatial identifier of the corresponding subspace, and all spatial identifiers are sorted to obtain a secondary identifier sequence corresponding to the target subspace.

[0070] The secondary identification sequence can be used to represent the position information of the three-dimensional point distribution in the target subspace.

[0071] Specifically, the target subspace is also equally divided into N subspaces to ensure the size consistency of the secondary identification sequence and the primary identification sequence.

[0072] In the medical building modeling scenario, the subspace can be obtained by further dividing the internal subspace of the medical building that needs to be further divided, and the secondary identification sequence can be used to represent the position information of the three-dimensional point distribution in the internal subspace of the medical building that needs to be further divided.

[0073] In one embodiment, spatial division can be performed in an iterative manner, that is, after the target subspace is divided into N subspaces and the spatial identification is determined, the subspace corresponding to the spatial identification greater than a preset identification threshold is determined as the target subspace, the sorting position of the target subspace is determined from the secondary identification sequence, and the step of dividing the target subspace into N subspaces is returned to execute, and the number of data containing point cloud data in each subspace is obtained by counting, and the number of data in each subspace is used as the spatial identification of the corresponding subspace. All spatial identifications are sorted to obtain a third-level identification sequence corresponding to the target subspace. The level of the identification sequence is related to the number of divisions. At this time, the description of the target space using the spatial identification sequence is more detailed and specific, but it will increase a certain amount of data. The implementer can flexibly determine the number of spatial divisions according to actual conditions, so as to balance the details of the description and the ability to bear the amount of data.

[0074] The above steps divide the target subspace into N subspaces, count the data containing point cloud data in each subspace, use the data number of each subspace as the spatial identifier of the corresponding subspace, sort all the spatial identifiers, and obtain the secondary identifier sequence corresponding to the target subspace. The secondary identifier sequence is used to describe the distribution information of the three-dimensional points in the target subspace, so that the complex three-dimensional point information is converted into a concise secondary identifier sequence, which simplifies the description method of dynamic point cloud data and improves the compression efficiency of subsequent dynamic point cloud data.

[0075] In step S205, description information describing the target subspace is formed according to the sorting position of the target subspace and the secondary identification sequence. The description information of all target subspaces is spliced ​​according to the sorting position of all target subspaces in the primary identification sequence to obtain a splicing result, and the splicing result is determined to be the target description information of the current point cloud data.

[0076] The description information may be used to characterize the spatial information of the target subspace, and the target description information may characterize the spatial distribution information of the point cloud data in the target space to which the current point cloud data belongs.

[0077] Specifically, the description information can be represented by a vector of size 1*N+1, that is, a vector of 1 row and N+1 columns, the first column is the sorting position of the target subspace, and the next N columns are the secondary identification sequence of the target subspace. The splicing can be done in a concatenated manner. In this embodiment, the description information of all target subspaces is spliced ​​in the row dimension, and the splicing result can be represented by a vector of size N*N+1.

[0078] In the medical building modeling scenario, the description information can be used to characterize the spatial information of the internal subspace of the medical building that needs to be further divided, and the target description information can characterize the spatial distribution information of the point cloud data in the internal subspace of the medical building to which the current point cloud data belongs.

[0079] Optionally, the description information describing the target subspace is formed according to the sorting position of the target subspace and the secondary identification sequence, including:

[0080] The secondary identification sequence is converted into a base, and a conversion value of the secondary identification sequence is obtained. The conversion value and the sorting position form description information.

[0081] The conversion value may refer to the result of base conversion of the secondary identification sequence.

[0082] Specifically, in this embodiment, following the example of the spatial identifiers 0 and 1 in the above embodiment, the secondary identifier sequence is composed of 0 and 1. At this time, representing the secondary identifier sequence with a vector will occupy more data bits. Therefore, the secondary identifier sequence can be regarded as a binary number, and the binary number is converted into a decimal number to obtain a conversion value. The conversion value only occupies one data bit, and there is a one-to-one correspondence between the secondary identifier sequence and the conversion value. The implementer can regard it as the corresponding low-base number according to the actual set spatial identifier range, and convert the low-base number into a high-base number.

[0083] In this embodiment, the secondary identification sequence regarded as a low-base number is converted into a high-base number through base conversion, thereby reducing the data bits occupied by the secondary identification sequence, thereby increasing the data volume of the descriptive information of the point cloud data and improving the efficiency of the current point cloud data compression.

[0084] Optionally, the description information of all target subspaces is spliced ​​to obtain a splicing result, and the splicing result is determined as the target description information of the current point cloud data, including:

[0085] According to the primary identification sequence corresponding to the target space and the preset initial position, initial description information describing the target space is formed;

[0086] The initial description information and the description information of all target subspaces are spliced ​​to obtain a splicing result, and the splicing result is determined to be the target description information of the current point cloud data.

[0087] Among them, the initial position can represent the position information of the target space. The initial position defaults to 1. The initial position is added to make the constructed initial description information and the description information size consistent. The initial description information can be used to describe the spatial domain information of the target space.

[0088] In this embodiment, the initial description information of the target space and the description information of all target subspaces are fused to obtain target description information, thereby providing richer context information and facilitating improvement of the accuracy of subsequent encoding processes.

[0089] The above steps form description information describing the target subspace based on the sorting position of the target subspace and the secondary identification sequence, splice the description information of all target subspaces according to the sorting position of all target subspaces in the primary identification sequence to obtain a splicing result, and determine the splicing result as the target description information of the current point cloud data, provide context information of the current point cloud data in the spatial domain after averaging, so as to improve the accuracy of the subsequent encoding process.

[0090] Step S206, obtain the reference description information of the point cloud data at the previous moment of the current point cloud data, use the preset prediction model to extract the association information between the target description information and the reference description information, and obtain the target probability distribution of the target description information based on the association information, perform entropy coding on the target probability distribution, obtain the coding result, and determine that the coding result is the compression result of the current point cloud data.

[0091] Among them, the point cloud data at the previous moment can refer to the point cloud data that has a time series association with the current point cloud data and is time-preceding, the reference description information can be used to describe the spatial distribution information of the point cloud data at the previous moment, the prediction model can adopt a deep conditional entropy model, the associated information can refer to the joint entropy information of the target description information and the reference description information, and the target probability distribution can characterize the possibility of converting the point cloud data at the previous moment into the current point cloud data.

[0092] In the medical building modeling scenario, the current point cloud data and the point cloud data at the previous moment both correspond to the interior space of the medical building. Accordingly, the reference description information can be used to describe the spatial distribution information of the point cloud data of the interior space of the medical building at the previous moment, and the compression result can be used to represent the compression result of the current point cloud data of the interior space of the medical building, so that the robot used for medical building modeling can store the current point cloud data of the interior space of the medical building with less storage pressure, and further enable the robot used for medical building modeling to use point cloud splicing, meshing, texture mapping, etc. to achieve modeling of the interior space of the medical building based on the compression result of the stored current point cloud data of the interior space of the medical building.

[0093] Optionally, the prediction model includes a first encoder, a second encoder, and a third encoder, and the first encoder and the second encoder are the same;

[0094] Using the preset prediction model, the correlation information between the target description information and the reference description information is extracted, and based on the correlation information, the target probability distribution of the target description information is obtained, including:

[0095] Encoding the target description information using a first encoder to obtain first encoded information;

[0096] Encoding the reference description information using a second encoder to obtain second encoded information;

[0097] The third encoder is used to predict the probability distribution of the first coded information when the second coded information is used as a condition based on the first coded information and the second coded information to obtain a target probability distribution.

[0098] The first encoding information may represent feature information of the target description information, and the second encoding information may represent feature information of the reference description information.

[0099] Specifically, in this embodiment, the first encoder, the second encoder, and the third encoder may all adopt the encoding structure of the Transformer model, and the parameters of the first encoder and the second encoder are consistent.

[0100] In this embodiment, the dynamic point cloud data is regarded as a Markov process, that is, the current point cloud data of the current frame only depends on the point cloud data at the previous moment, and the point cloud data at the previous moment is equivalent to the known conditional information. The purpose of the prediction model is to predict the probability of the current point cloud data appearing under the known conditional information, that is, the purpose of the prediction model is essentially to predict the conditional probability distribution.

[0101] In this embodiment, the spatial and temporal information of the dynamic point cloud data is fully extracted through the prediction model, and the characteristic that the change between frames of the dynamic point cloud data is usually small is effectively utilized in the form of conditional probability distribution, and the temporal redundancy of the dynamic point cloud data is fully utilized, thereby improving the compression efficiency and compression rate of the dynamic point cloud data.

[0102] Optionally, entropy coding is performed on the target probability distribution to obtain a coding result, including:

[0103] Use arithmetic coding to perform entropy coding on the target probability distribution to obtain a coded decimal, and then obtain the coding result based on the coded decimal.

[0104] The coded decimal may refer to a result of arithmetic coding, and the coding result may be used as a compression result of the current point cloud data.

[0105] Specifically, the decimal point and integer digits of the encoded decimal are removed, and only the decimal digits are retained to obtain the encoded result.

[0106] In this embodiment, the target probability distribution is encoded by arithmetic coding, which can obtain an encoding result with fewer data bits compared to conventional encoding methods, thereby improving the compression rate of dynamic point cloud data.

[0107] The above steps of obtaining reference description information of the point cloud data at the previous moment of the current point cloud data, using a preset prediction model to extract the association information between the target description information and the reference description information, and obtaining the target probability distribution of the target description information based on the association information, performing entropy coding on the target probability distribution to obtain the coding result, and determining that the coding result is the compression result of the current point cloud data, jointly performing distribution prediction on the reference description information and the target description information, fully utilize the time domain correlation and time domain redundancy of the dynamic point cloud data, thereby improving the compression efficiency and compression ratio of the dynamic point cloud data.

[0108] In this embodiment, the three-dimensional space to which the current point cloud data belongs is spatially divided multiple times to accurately obtain the spatial domain description information of each point in the current point cloud data, and the reference description information and target description information are combined to perform distribution prediction, thereby fully utilizing the time domain correlation of the dynamic point cloud data, thereby improving the compression efficiency and compression ratio of the dynamic point cloud data, and thereby reducing the storage pressure of point cloud modeling in medical scenarios, and improving the applicability of intelligent robots in medical scenarios.

[0109] Corresponding to the compression method of dynamic point cloud data in the above embodiment, Figure 3 The following is a block diagram of the structure of a dynamic point cloud data compression device provided by the second embodiment of the present invention. The compression device is applied to a server. The computer device corresponding to the server is connected to the client to obtain current point cloud data from the client. The current point cloud data can refer to three-dimensional point cloud data collected in real time. The client has a certain storage function and can store at least two frames of three-dimensional point cloud data. The computer device corresponding to the server is deployed with a trained prediction model. The prediction model can be used to predict the probability distribution of point cloud data based on two consecutive frames of point cloud data. For ease of explanation, only the parts related to the embodiment of the present invention are shown.

[0110] See also Figure 3 , the compression device comprises:

[0111] A quantity counting module 31 is used to obtain the current point cloud data in the target space, divide the target space into N subspaces, and count the number of data containing point cloud data in each subspace, where N is an integer greater than one;

[0112] A first sorting module 32 is configured to use the amount of data in each subspace as a space identifier of the corresponding subspace, sort all space identifiers, and obtain a primary identifier sequence corresponding to the target space;

[0113] A position determination module 33 is configured to obtain a preset identification threshold, determine a subspace corresponding to a spatial identification greater than the preset identification threshold as a target subspace, and determine a sorting position of the target subspace from a primary identification sequence;

[0114] The second sorting module 34 is used to divide the target subspace into N subspaces, count the number of data containing point cloud data in each subspace, use the number of data in each subspace as the spatial identifier of the corresponding subspace, sort all the spatial identifiers, and obtain a secondary identifier sequence corresponding to the target subspace;

[0115] The spatial description module 35 is configured to form description information describing the target subspace based on the sorting position of the target subspace and the secondary identification sequence, and to splice the description information of all target subspaces based on the sorting position of all target subspaces in the primary identification sequence to obtain a splicing result, and determine the splicing result as the target description information of the current point cloud data;

[0116] The point cloud compression module 36 is used to obtain reference description information of the point cloud data at the previous moment of the current point cloud data, use a preset prediction model to extract the association information between the target description information and the reference description information, and obtain the target probability distribution of the target description information based on the association information, perform entropy coding on the target probability distribution, obtain the coding result, and determine the coding result as the compression result of the current point cloud data.

[0117] Optionally, the first sorting module 32 includes:

[0118] A first identification determination unit is configured to determine, for the data quantity of any subspace, a first preset value as the space identification of the subspace if the data quantity is greater than a preset quantity threshold;

[0119] a second identification determining unit, configured to determine a second preset value as a spatial identification of the subspace if the amount of data is less than or equal to the amount threshold;

[0120] The subspace traversal unit is used to traverse the data quantity of all subspaces and obtain the space identification of the corresponding subspace.

[0121] Optionally, the first sorting module 32 includes:

[0122] A position extraction unit, used to extract the relative position of each subspace in the target space;

[0123] The position sorting unit is used to sort all space identifiers according to a preset relative position order to obtain a primary identifier sequence corresponding to the target space.

[0124] Optionally, the space description module 35 includes:

[0125] The base conversion unit is used to perform base conversion on the secondary identification sequence to obtain a conversion value of the secondary identification sequence, and form description information by the conversion value and the sorting position.

[0126] Optionally, the space description module 35 includes:

[0127] An initial description unit, configured to form initial description information describing the target space according to the primary identification sequence corresponding to the target space and a preset initial position;

[0128] The information splicing unit is used to splice the initial description information and the description information of all target subspaces to obtain a splicing result, and determine the splicing result as the target description information of the current point cloud data.

[0129] Optionally, the prediction model includes a first encoder, a second encoder, and a third encoder, and the first encoder and the second encoder are the same;

[0130] The point cloud compression module 36 includes:

[0131] A first encoding unit, configured to encode the target description information using a first encoder to obtain first encoded information;

[0132] A second encoding unit, configured to encode the reference description information using a second encoder to obtain second encoded information;

[0133] The third encoding unit is configured to use a third encoder to predict the probability distribution of the first encoding information when the second encoding information is used as a condition based on the first encoding information and the second encoding information, so as to obtain a target probability distribution.

[0134] Optionally, the point cloud compression module 36 includes:

[0135] The arithmetic coding unit is used to perform entropy coding on the target probability distribution using arithmetic coding to obtain a coding decimal, and obtain a coding result according to the coding decimal.

[0136] It should be noted that the information interaction, execution process, etc. between the above-mentioned modules and units are based on the same concept as the embodiment of the method of the present invention. Their specific functions and technical effects can be found in the method embodiment part and will not be repeated here.

[0137] Figure 4 This is a schematic diagram of the structure of a computer device provided in the third embodiment of the present invention. Figure 4 As shown, the computer device of this embodiment includes: at least one processor ( Figure 4 Only one is shown in the figure), a memory, and a computer program stored in the memory and executable on at least one processor, wherein when the processor executes the computer program, the steps of any of the above-mentioned compression method embodiments are implemented.

[0138] The computer device may include, but is not limited to, a processor and a memory. It will be understood by those skilled in the art that Figure 4 The above is merely an example of a computer device and does not constitute a limitation on the computer device. The computer device may include more or fewer components than shown in the figure, or a combination of certain components, or different components. For example, it may also include a network interface, a display screen, and an input device.

[0139] The processor may be a CPU, other general-purpose processors, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor.

[0140] Memory includes readable storage media, internal memory, and the like. Internal memory can be the internal memory of a computer device, providing an environment for the operation of the operating system and computer-readable instructions stored in the readable storage medium. The readable storage medium can be the computer device's hard drive. In other embodiments, it can also be an external storage device, such as a plug-in hard drive, a Smart Media Card (SMC), a Secure Digital (SD) card, or a flash memory card. Furthermore, memory can include both the computer device's internal storage unit and external storage devices. Memory is used to store the operating system, application programs, boot loaders, data, and other programs, such as the program code of computer programs. Memory can also be used to temporarily store data that has been output or is about to be output.

[0141] Those skilled in the art can clearly understand that, for the convenience and simplicity of description, only the division of the above-mentioned functional units and modules is used as an example for illustration. In actual applications, the above-mentioned functions can be distributed and completed by different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiment can be integrated into a processing unit, or each unit can exist physically alone, or two or more units can be integrated into one unit. The above-mentioned integrated unit can be implemented in the form of hardware or in the form of a software functional unit. In addition, the specific names of the functional units and modules are only for the convenience of distinguishing each other and are not used to limit the scope of protection of the present invention. The specific working process of the units and modules in the above-mentioned device can refer to the corresponding process in the aforementioned method embodiment, which will not be repeated here. If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the present invention can implement all or part of the process steps in the above-mentioned method embodiments by instructing the relevant hardware through a computer program. The computer program can be stored in a computer-readable storage medium. When executed by a processor, the computer program can implement the steps of the above-mentioned method embodiments. The computer program includes computer program code, which can be in source code form, object code form, executable file, or some intermediate form. Computer-readable media can include at least: any entity or device capable of carrying computer program code, recording media, computer memory, read-only memory (ROM), random access memory (RAM), electric carrier signals, telecommunications signals, and software distribution media. Examples include USB flash drives, removable hard drives, magnetic disks, or optical disks. In some jurisdictions, based on legislation and patent practice, computer-readable media cannot be electric carrier signals or telecommunications signals.

[0142] The present invention may implement all or part of the processes in the above-mentioned method embodiments, and may also be completed through a computer program product. When the computer program product runs on a computer device, the computer device can implement the steps in the above-mentioned method embodiments when executing the computer program product.

[0143] In the above embodiments, the description of each embodiment has its own focus. For parts that are not described or recorded in detail in a certain embodiment, reference can be made to the relevant description of other embodiments.

[0144] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of the present invention.

[0145] In the embodiments provided by the present invention, it should be understood that the disclosed apparatus / computer equipment and methods can be implemented in other ways. For example, the apparatus / computer equipment embodiments described above are merely illustrative. For example, the division of modules or units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0146] Units described as separate components may or may not be physically separate, and components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.

[0147] The above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit the same. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. These modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the various embodiments of the present invention, and should all be included in the scope of protection of the present invention.

Claims

1. A method for compressing dynamic point cloud data, characterized in that: The compression method comprises: Obtain current point cloud data in the target space, divide the target space into N subspaces, and count the number of point cloud data in each subspace, where N is an integer greater than one; The number of data in each subspace is used as the space identifier of the corresponding subspace, and all space identifiers are sorted to obtain a primary identifier sequence corresponding to the target space; Obtaining a preset identification threshold, determining a subspace corresponding to a spatial identification greater than the preset identification threshold as a target subspace, and determining a sorting position of the target subspace from the primary identification sequence; The target subspace is divided into N subspaces, and the number of data containing point cloud data in each subspace is obtained by counting. The number of data in each subspace is used as the spatial identifier of the corresponding subspace, and all spatial identifiers are sorted to obtain a secondary identifier sequence corresponding to the target subspace; forming description information describing the target subspace according to the sorting position of the target subspace and the secondary identification sequence, splicing the description information of all target subspaces according to the sorting positions of all target subspaces in the primary identification sequence to obtain a splicing result, and determining the splicing result as the target description information of the current point cloud data; Obtain reference description information of the point cloud data at a previous moment of the current point cloud data, use a preset prediction model to extract association information between the target description information and the reference description information, and obtain a target probability distribution of the target description information based on the association information, perform entropy encoding on the target probability distribution to obtain an encoding result, and determine that the encoding result is a compression result of the current point cloud data.

2. The compression method according to claim 1, wherein: The method of using the amount of data in each subspace as a space identifier of the corresponding subspace includes: For the amount of data in any subspace, if the amount of data is greater than a preset amount threshold, determining a first preset value as the space identifier of the subspace; If the amount of data is less than or equal to the amount threshold, determining a second preset value as the space identifier of the subspace; Traverse the data quantity of all subspaces and obtain the space identification of the corresponding subspace.

3. The compression method according to claim 1, wherein: The step of sorting all space identifiers to obtain a primary identifier sequence corresponding to the target space includes: Extracting the relative position of each subspace within the target space; All space identifiers are sorted according to a preset relative position order to obtain a primary identifier sequence corresponding to the target space.

4. The compression method according to claim 1, wherein: The description information describing the target subspace is formed according to the sorting position of the target subspace and the secondary identification sequence, including: The secondary identification sequence is subjected to base conversion to obtain a conversion value of the secondary identification sequence, and the description information is formed by the conversion value and the sorting position.

5. The compression method according to claim 1, wherein: The step of splicing the description information of all target subspaces to obtain a splicing result, and determining the splicing result as the target description information of the current point cloud data includes: Forming initial description information describing the target space according to the primary identification sequence corresponding to the target space and the preset initial position; The initial description information and the description information of all target subspaces are spliced ​​together to obtain the splicing result, and the splicing result is determined to be the target description information of the current point cloud data.

6. The compression method according to claim 1, wherein: The prediction model includes a first encoder, a second encoder, and a third encoder, wherein the first encoder and the second encoder are the same; The using of a preset prediction model to extract association information between the target description information and the reference description information, and obtaining a target probability distribution of the target description information based on the association information, includes: Encoding the target description information using the first encoder to obtain first encoded information; Encoding the reference description information using the second encoder to obtain second encoded information; The third encoder is used to predict the probability distribution of the first coding information when the second coding information is used as a condition based on the first coding information and the second coding information to obtain the target probability distribution.

7. The compression method according to any one of claims 1 to 6, characterized in that: The entropy encoding of the target probability distribution to obtain an encoding result includes: The target probability distribution is entropy coded using arithmetic coding to obtain a coded decimal, and the coding result is obtained according to the coded decimal.

8. A dynamic point cloud data compression device, characterized in that: The compression device comprises: A quantity statistics module is used to obtain the current point cloud data in the target space, divide the target space into N subspaces, and count the number of data containing point cloud data in each subspace, where N is an integer greater than one; A first sorting module is configured to use the amount of data in each subspace as a space identifier of the corresponding subspace, sort all space identifiers, and obtain a primary identifier sequence corresponding to the target space; a position determination module, configured to obtain a preset identification threshold, determine a subspace corresponding to a spatial identification greater than the preset identification threshold as a target subspace, and determine a sorting position of the target subspace from the primary identification sequence; A second sorting module is used to divide the target subspace into N subspaces, count the number of data containing point cloud data in each subspace, use the number of data in each subspace as the spatial identifier of the corresponding subspace, sort all spatial identifiers, and obtain a secondary identifier sequence corresponding to the target subspace; a space description module, configured to form description information describing the target subspace according to the sorting position of the target subspace and the secondary identification sequence, splice the description information of all target subspaces according to the sorting positions of all target subspaces in the primary identification sequence to obtain a splicing result, and determine the splicing result as the target description information of the current point cloud data; The point cloud compression module is used to obtain reference description information of the point cloud data at the previous moment of the current point cloud data, use a preset prediction model to extract the association information between the target description information and the reference description information, and obtain the target probability distribution of the target description information based on the association information, perform entropy coding on the target probability distribution to obtain a coding result, and determine that the coding result is the compression result of the current point cloud data.

9. A computer device, characterized in that: The computer device includes a processor, a memory, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, the compression method according to any one of claims 1 to 7 is implemented.

10. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the compression method according to any one of claims 1 to 7 is implemented.

Citation Information

Patent Citations

  • Normal vector-based point cloud attribute compression method, apparatus and device, and medium

    CN113096200A

  • Distribution processing method, device and equipment for video streams in cloud edge scene and medium

    CN116723194A