3D Point Cloud Encoding Method, 3D Point Cloud Decoding Method, Device, and Electronic Device
By using fractional downsampling and clustered interpolation network methods in point cloud encoding, the problem of low point cloud encoding quality in the prior art is solved, and efficient and flexible point cloud compression and decoding are achieved.
Patent Information
- Application Number
- CN202510152291.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-12
- Publication Date
- 2025-06-03
- Estimated Expiration
- 2045-02-12
AI Technical Summary
The prior art is difficult to achieve high-quality compression in point cloud encoding, and the lossless compression rate is limited, while lossy compression will lead to data distortion and loss of details.
A three-dimensional point cloud encoding method is proposed. By setting downsampling parameters to non-integers with a downsampling parameter greater than 1, performing fractional-level downsampling, and combining clustering and interpolation networks, high-quality point cloud encoding and decoding are achieved.
It realizes more flexible and efficient point cloud compression, supports point cloud encoding with arbitrary bit rate, reduces visual distortion and improves the quality of point cloud encoding.
Smart Images

Figure CN119625091B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of artificial intelligence technology, and in particular, to a three-dimensional point cloud encoding method, a three-dimensional point cloud decoding method, a device, and an electronic device. Background Art
[0002] A point cloud is a common format for representing three-dimensional data, which represents three-dimensional objects in the real world with an unordered set of points. In related technologies, point cloud encoding is usually performed by lossy compression or lossless compression. Although lossless compression can maintain the integrity of the point cloud, the compression rate is limited, so that the point cloud still requires a large storage space and network transmission bandwidth after compression. Although lossy compression can improve the compression rate and reduce the storage and transmission costs, it will cause data distortion and detail loss. Therefore, how to achieve high-quality point cloud encoding has become an urgent problem to be solved. Summary of the Invention
[0003] The main object of the present invention is to provide a three-dimensional point cloud encoding method, a three-dimensional point cloud decoding method, a device, and an electronic device, aiming to improve the quality of point cloud encoding.
[0004] To achieve the above object, a first aspect of the present invention provides a three-dimensional point cloud encoding method, and the method includes:
[0005] Obtain an original point cloud and a downsampling parameter; the downsampling parameter is a non-integer greater than 1;
[0006] Downsample the original point cloud according to the downsampling parameter to obtain a downsampled point cloud and target information of each point in the downsampled point cloud;
[0007] Determine the neighbor occupancy information of each point in the downsampled point cloud;
[0008] Cluster the downsampled point cloud according to the downsampling parameter to obtain point cloud clusters;
[0009] Train an interpolation network for each cluster according to the target information and neighbor occupancy information of each point in each point cloud cluster to obtain optimized interpolation network parameters for each cluster;
[0010] Perform lossless encoding on the downsampled point cloud to obtain downsampled point cloud encoded data, and encode the interpolation network parameters of each cluster to obtain network encoded data.
[0011] The step of downsampling the original point cloud according to the downsampling parameter to obtain a downsampled point cloud and target information of each point in the downsampled point cloud includes:
[0012] Quantize the coordinate components of each point in the original point cloud according to the downsampling parameters to obtain the downsampled point cloud;
[0013] Each point in the downsampled point cloud corresponds to one or more points in the original point cloud, and the target information of each point in the downsampled point cloud is the occupancy information of the corresponding points in the original point cloud.
[0014] Determining the neighbor occupancy information of each point in the downsampled point cloud includes:
[0015] According to the geometric coordinates of each point in the downsampled point cloud and the preset distance parameter, determine the set of neighbor coordinate information of each point in the downsampled point cloud;
[0016] Perform voxelization on the downsampled point cloud to obtain a voxelized representation of the downsampled point cloud;
[0017] According to the voxelized representation of the downsampled point cloud and the set of neighbor coordinate information, query the occupancy status of all neighbors in the set of neighbor coordinate information of each point in the downsampled point cloud to obtain the neighbor occupancy information of each point in the downsampled point cloud.
[0018] Clustering the downsampled point cloud according to the downsampling parameters to obtain point cloud clusters includes:
[0019] The downsampling parameter is , where n is a natural number, and p and q are relatively prime positive integers, and q < p < 2q;
[0020] According to p and q, determine the correspondence between the coordinate components of the downsampled point cloud and the coordinate components of the original point cloud, and the correspondence includes a one-to-one or one-to-two relationship;
[0021] According to the correspondence of the three coordinate components of each point in the downsampled point cloud, cluster the points with the same correspondence into one category to obtain 8 point cloud clusters.
[0022] Clustering the downsampled point cloud according to the downsampling parameters to obtain point cloud clusters includes:
[0023] The downsampling parameter is , where n is a positive integer, and p and q are relatively prime positive integers, and q < p < 2q;
[0024] According to n, p, and q, determine the correspondence between the coordinate components of the downsampled point cloud and the coordinate components of the original point cloud, and the correspondence includes a one-to-(n + 1) or one-to-(n + 2) relationship;
[0025] According to the corresponding relationship of the three coordinate components of each point in the downsampled point cloud, the points with the same corresponding relationship are clustered into one category, and eight point cloud clustering clusters are obtained.
[0026] Training the interpolation network for each cluster according to the target information and neighbor occupancy information of each point in each point cloud clustering cluster to obtain the optimized interpolation network parameters for each cluster, including:
[0027] According to the neighbor occupancy information of each point in each point cloud clustering cluster, input it into the interpolation network of each cluster to obtain the predicted target information of each point;
[0028] According to the predicted target information and the target information of each point in each point cloud clustering cluster, calculate the loss function of the interpolation network of each cluster;
[0029] Adjust the interpolation network parameters of each cluster by minimizing the loss function to obtain the optimized interpolation network parameters of each cluster.
[0030] To achieve the above object, the second aspect of the present invention proposes a three-dimensional point cloud decoding method, the method includes:
[0031] Obtain the downsampling parameters, the downsampled point cloud and the interpolation network parameters;
[0032] Determine the neighbor occupancy information of each point in the downsampled point cloud;
[0033] Cluster the downsampled point cloud according to the downsampling parameters to obtain the downsampled point cloud clustering clusters;
[0034] Input the neighbor occupancy information of each point in each downsampled point cloud clustering cluster into the interpolation network corresponding to the interpolation network parameters of each cluster to obtain the predicted target information of each point;
[0035] Obtain the reconstructed point cloud according to the predicted target information of each point in the downsampled point cloud.
[0036] To achieve the above object, the third aspect of the present invention proposes a three-dimensional point cloud encoding device, the device includes:
[0037] The first acquisition module is used to acquire the original point cloud and the downsampling parameters; the downsampling parameters are non-integers greater than 1;
[0038] The downsampling module is used to downsample the original point cloud according to the downsampling parameters to obtain the downsampled point cloud and the target information of each point in the downsampled point cloud;
[0039] The first determination module is used to determine the neighbor occupancy information of each point in the downsampled point cloud;
[0040] The first clustering module is used to cluster the downsampled point cloud according to the downsampling parameters to obtain point cloud clustering clusters;
[0041] The training module is used to train the interpolation network for each clustering cluster according to the target information and neighbor occupancy information of each point in each point cloud clustering cluster, and obtain the interpolation network parameters of each optimized clustering cluster;
[0042] The encoded data generation module is used to perform lossless encoding on the downsampled point cloud to obtain downsampled point cloud encoded data, and encode the interpolation network parameters of each clustering cluster to obtain network encoded data.
[0043] To achieve the above object, a three-dimensional point cloud decoding device is proposed in the fourth aspect of the present invention. The device includes:
[0044] The second acquisition module is used to acquire downsampling parameters, downsampled point cloud and interpolation network parameters;
[0045] The second determination module is used to determine the neighbor occupancy information of each point in the downsampled point cloud;
[0046] The second clustering module is used to cluster the downsampled point cloud according to the downsampling parameters to obtain downsampled point cloud clustering clusters;
[0047] The inference module is used to input the neighbor occupancy information of each point in each downsampled point cloud clustering cluster into the interpolation network corresponding to the interpolation network parameters of each clustering cluster to obtain the predicted target information of each point;
[0048] The reconstruction module is used to obtain the reconstructed point cloud according to the predicted target information of each point in the downsampled point cloud.
[0049] To achieve the above object, an electronic device is proposed in the fifth aspect of the present invention. The electronic device includes a memory and a processor. The memory stores a computer program, and when the processor executes the computer program, it implements the three-dimensional point cloud encoding method described in the first aspect or the three-dimensional point cloud decoding method described in the second aspect.
[0050] The 3D point cloud encoding method, 3D point cloud decoding method, 3D point cloud encoding device, 3D point cloud decoding device, and electronic device according to the embodiments of the present application obtain an original point cloud and downsampling parameters, and downsample the original point cloud according to the downsampling parameters to obtain a downsampled point cloud and target information for each point in the downsampled point cloud. Through the downsampling operation, the data volume of the original point cloud can be reduced, and the one-to-one or one-to-many mapping relationship between the original point cloud and the downsampled point cloud is indicated by the target information, so as to assist the point cloud reconstruction process of the downsampled point cloud according to the target information. When the downsampling parameter is an integer, the original point cloud is sampled at a fixed interval, which will cause the downsampled point cloud to lack key features and detailed information in the original point cloud when processing the original point cloud with complex geometric structures. The embodiments of the present application set the downsampling parameter to a non-integer greater than 1, and realize more refined and flexible sampling control through fractional downsampling, which can support the encoding of point clouds with any bit rate, and can better retain the key features and detailed information in the original point cloud, realizing flexible and efficient point cloud encoding. In order to be able to recover the original point cloud from the point cloud encoding data with high quality, other information in addition to the downsampled point cloud is also required, and the neighbor occupancy information of each point in the downsampled point cloud is determined to use the neighbor occupancy information as supplementary information to assist point cloud reconstruction, thereby reducing visual distortion and improving the quality of point cloud encoding. During the downsampling process, the original point cloud will undergo non-uniform quantization, resulting in various quantization situations of the original point cloud. In order to distinguish the original point clouds in different quantization situations, the downsampled point cloud is clustered according to the downsampling parameters to obtain point cloud clustering clusters. In order to ensure that the original point clouds corresponding to each non-uniform quantization situation can be recovered with high quality, interpolation networks for each clustering cluster are trained according to the target information and neighbor occupancy information of each point in each point cloud clustering cluster to obtain optimized interpolation network parameters for each clustering cluster, so as to perform point cloud enhancement on the corresponding clustering cluster using different interpolation networks. In order to reduce the storage space consumed by storing the downsampled point cloud and interpolation network parameters, as well as the time overhead and network overhead consumed by transmitting the downsampled point cloud and interpolation network parameters, the downsampled point cloud is losslessly encoded to obtain downsampled point cloud encoding data, and the interpolation network parameters of each clustering cluster are encoded to obtain network encoding data. Lossless encoding can further reduce the bitstream and ensure the data integrity of the downsampled point cloud. And the downsampled point cloud encoding data is used for point cloud reconstruction using the network encoding data, so that the downsampled point cloud can be recovered as the original point cloud with high quality, and thus high-quality point cloud encoding is realized.
[0051] As can be seen from the above, by clustering the downsampled point cloud according to the downsampling parameters and training the interpolation network according to the clustering clusters, the point cloud encoding supporting fractional downsampling can be effectively supported, and more flexible and efficient point cloud compression can be realized. By supporting the point cloud encoding in the case where the downsampling parameter is a non-integer greater than 1, that is, supporting the point cloud encoding of fractional downsampling, the encoding of point clouds with any bit rate can be supported, and more flexible and refined compression control can be realized. Description of the Drawings
[0052] Figure 1 is a flowchart of the 3D point cloud encoding method provided by the present invention;
[0053] Figure 2 is Figure 1 a flowchart of step S120 in
[0054] Figure 3 is Figure 1 a flowchart of step S130 in
[0055] Figure 4 is Figure 1 a flowchart of step S140 in
[0056] Figure 5 is a schematic diagram of the quantization relationship of the abscissa component provided by the present invention;
[0057] Figure 6 is another schematic diagram of the quantization relationship of the abscissa component provided by the present invention;
[0058] Figure 7 is Figure 1 another flowchart of step S140 in
[0059] Figure 8 is another schematic diagram of the quantization relationship of the abscissa component provided by the present invention;
[0060] Figure 9 is Figure 1 a flowchart of step S150 in
[0061] Figure 10 is a flowchart of the 3D point cloud decoding method provided by the present invention;
[0062] Figure 11 is a schematic structural diagram of the 3D point cloud encoding device provided by the present invention;
[0063] Figure 12 is a schematic structural diagram of the 3D point cloud decoding device provided by the present invention;
[0064] Figure 13 is a schematic hardware structure diagram of the electronic device provided by the present invention. Detailed Embodiments
[0065] In order to make the objectives, technical solutions and advantages of the present invention clearer, the present invention will be further described in detail below with reference to the drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
[0066] It should be noted that although the functional modules are divided in the device schematic diagram and the logical sequence is shown in the flowchart, in some cases, the steps shown or described can be executed in a different module division from that in the device or a different sequence from that in the flowchart. Terms such as "first" and "second" in the specification, claims and the above-mentioned drawings are used to distinguish similar objects and do not necessarily describe a specific order or sequence.
[0067] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by those of ordinary skill in the technical field to which this application belongs. The terms used herein are only for the purpose of describing the embodiments of this application and are not intended to limit this application.
[0068] A point cloud is a common format for representing three-dimensional data, which represents three-dimensional objects in the real world with an unordered set of points. In the related art, point cloud encoding is usually performed in a lossy compression or lossless compression manner. Although lossless compression can maintain the integrity of the point cloud, the compression rate is limited, resulting in a large storage space and network transmission bandwidth still required after compression of the point cloud. Although lossy compression can improve the compression rate and reduce the storage and transmission costs, it will cause data distortion and detail loss. Lossy compression needs to balance between the compression rate and visual quality, that is, rate-distortion optimization (RDO). Therefore, how to achieve high-quality point cloud encoding has become an urgent problem to be solved.
[0069] Based on this, the present invention provides a three-dimensional point cloud encoding method, a three-dimensional point cloud decoding method, a three-dimensional point cloud encoding device, a three-dimensional point cloud decoding device and an electronic device, aiming to effectively support the point cloud encoding of fractional downsampling and achieve more flexible and efficient point cloud compression.
[0070] The three-dimensional point cloud encoding method, the three-dimensional point cloud decoding method, the three-dimensional point cloud encoding device, the three-dimensional point cloud decoding device and the electronic device provided by the present invention are specifically described through the following embodiments. First, the three-dimensional point cloud encoding method in the present invention is described.
[0071] The 3D point cloud encoding method provided by the present invention relates to the field of artificial intelligence technology. The 3D point cloud encoding method provided by the present invention can be applied to a terminal, or to a server side, or can be software running on a terminal or a server side. In some embodiments, the terminal can be a smart phone, a tablet computer, a notebook computer, a desktop computer, etc.; the server side can be configured as an independent physical server, or can be configured as a server cluster or a distributed system composed of multiple physical servers, or can also be configured as a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms; the software can be an application that implements the 3D point cloud encoding method, etc., but is not limited to the above forms.
[0072] The present invention can be used in many general or special computer system environments or configurations. For example: personal computers, server computers, handheld or portable devices, tablet devices, multi-processor systems, microprocessor-based systems, set-top boxes, programmable consumer electronic devices, network PCs, minicomputers, mainframe computers, distributed computing environments including any of the above systems or devices, and so on. This application can be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform specific tasks or implement specific abstract data types. The present application can also be practiced in a distributed computing environment, where tasks are performed by remote processing devices connected through a communication network. In a distributed computing environment, program modules can be located in local and remote computer storage media including storage devices.
[0073] Figure 1 FIG. is an optional flowchart of the 3D point cloud encoding method provided by the present invention, which is applied to an encoding end and may include, but is not limited to, steps S110 to S160.
[0074] Step S110, obtain the original point cloud and the downsampling parameter; the downsampling parameter is a non-integer greater than 1;
[0075] Step S120, perform downsampling on the original point cloud according to the downsampling parameter to obtain a downsampled point cloud and the target information of each point in the downsampled point cloud;
[0076] Step S130, determine the neighbor occupancy information of each point in the downsampled point cloud;
[0077] Step S140, perform clustering on the downsampled point cloud according to the downsampling parameter to obtain point cloud clustering clusters;
[0078] Step S150: According to the target information and neighbor occupancy information of each point in each point cloud clustering cluster, train the interpolation network for each clustering cluster to obtain the optimized interpolation network parameters for each clustering cluster.
[0079] Step S160: Perform lossless encoding on the downsampled point cloud to obtain the downsampled point cloud encoded data, and encode the interpolation network parameters of each clustering cluster to obtain the network encoded data.
[0080] In step S110 of some embodiments, the surface of an object is scanned by a three-dimensional sensor such as a three-dimensional scanner, lidar, depth camera, etc. to obtain three-dimensional data. The three-dimensional data is recorded in a storage medium in the form of points, and the original point cloud is obtained by reading the point cloud to be encoded from the storage medium. The original point cloud is a discrete data set composed of multiple three-dimensional coordinate points. The original point cloud includes multiple points, each point includes three-dimensional coordinates, and may carry other information related to the attributes of the point, such as color, reflectivity, intensity. The storage medium can be an optical storage medium such as an optical disc, a semiconductor storage medium such as a dynamic random access memory, a magnetic storage medium such as a disk drive, etc.
[0081] Three-dimensional data usually contains rich geometric information (such as shape, size, position) and related attributes (such as color, reflectivity, etc.). Compared with two-dimensional data, three-dimensional data can better help machines understand the real environment and provide users with a more immersive visual experience. Point cloud is a common format for representing three-dimensional data, which represents three-dimensional objects in the real world with an unordered set of points (including spatial coordinates and attributes such as color and reflectivity). Since there is no need to store and maintain topological information, point cloud has flexibility in the representation of non-manifold geometric structures and has the potential for real-time processing. In order to represent three-dimensional objects more realistically, the original point cloud usually contains a large number of points, which brings great challenges to the storage, transmission and processing of the original point cloud. Therefore, it is necessary to compress the original point cloud. The point cloud compression method based on integer multiple point cloud downsampling does not support point cloud encoding at arbitrary bitrates, and the encoding flexibility is poor. In order to achieve more flexible and efficient point cloud compression, the embodiments of the present application provide support for point cloud encoding at arbitrary bitrates for non-integers with downsampling parameters greater than 1 to support fractional-level downsampling of point clouds, so as to achieve more refined compression control and more flexible and efficient point cloud compression.
[0082] Set the downsampling parameter, which is used to downsample the original point cloud. Downsampling is the process of reducing the number of points in the original point cloud. Usually, certain rules are used to select which points to retain and which points to remove. The downsampling parameter is denoted as s, and s is any non-integer greater than 1. With a certain precision, s can be expressed as , where n is a natural number, and p and q are relatively prime positive integers, and q < p < 2q.
[0083] Please refer toFigure 2 , in some embodiments, step S120 may include but is not limited to steps S210 to S220:
[0084] Step S210, quantize the coordinate components of each point in the original point cloud according to the downsampling parameter to obtain the downsampled point cloud;
[0085] Step S220, each point in the downsampled point cloud corresponds to one or more points in the original point cloud, and the target information of each point in the downsampled point cloud is the occupancy information of the corresponding points in the original point cloud.
[0086] In step S210 of some embodiments, at the encoding end, downsample the coordinate components of each point in the original point cloud by a factor of s according to the downsampling parameter s to obtain the downsampled point cloud. Specifically, for each point in the original point cloud, divide the 3 coordinate components of the point by the downsampling parameter s respectively to obtain 3 intermediate components. The 3 coordinate components are the abscissa component x, the ordinate component y, and the vertical coordinate component z respectively. Round and remove duplicates of the 3 intermediate components of each point in the original point cloud to obtain the downsampled point cloud.
[0087] The original point cloud contains N points, and the i-th point is represented as , is the abscissa component of the i-th point, is the ordinate component of the i-th point, is the vertical coordinate component of the i-th point, and the original point cloud is represented as , the downsampled point cloud is represented as , M is the number of points in the downsampled point cloud, and M is not greater than N, is the downsampled point cloud The abscissa component of the j-th point in, is the downsampled point cloud The ordinate component of the j-th point in, is the downsampled point cloud The vertical coordinate component of the j-th point in. The calculation method of the downsampled point cloud is expressed as:
[0088] ,
[0089] where unique represents the duplicate removal operation for removing duplicate points; round represents the rounding operation.
[0090] In step S220 of some embodiments, there is a one-to-one or one-to-many mapping relationship between the downsampled point cloud and the original point cloud, and this mapping relationship is the target information. Each point in the downsampled point cloud corresponds to one or more points in the original point cloud. According to the correspondence between the points in the downsampled point cloud and the points in the original point cloud, the original point cloud is divided into multiple sub-point clouds, and each sub-point cloud corresponds to a point in the downsampled point cloud.
[0091] The j-th point in the downsampled point cloud The corresponding sub-point cloud is , , where M is the number of points in the downsampled point cloud, and the original point cloud V and the sub-point cloud can be expressed as:
[0092] ,
[0093] ,
[0094] where is the sub-point cloud corresponding to the j-th point in the downsampled point cloud; , and are the abscissa component, ordinate component, and vertical coordinate component of the i-th point in the original point cloud respectively; s is the downsampling parameter; , and are the abscissa component, ordinate component, and vertical coordinate component of the j-th point in the downsampled point cloud respectively; represents the union; round represents the rounding operation.
[0095] For example, when the downsampling parameter s = 4 / 3, the original point cloud V = {(1, 1, 1), (1, 1, 3), (2, 2, 1), (3, 3, 1), (2, 2, 3), (2, 3, 3), (3, 2, 3), (3, 3, 3)}, and the downsampled point cloud is = {(1, 1, 1), (1, 1, 2), (2, 2, 1), (2, 2, 2)}. According to the downsampled point cloud, the original point cloud is divided into sub-point clouds. The downsampled point cloud contains 4 points, and the sub-point cloud corresponding to each point is , , , .
[0096] Another example, when the downsampling parameter s = 7 / 5, the original point cloud V = {(4, 4, 4), (4, 4, 5), (5, 6, 4), (6, 6, 4), (6, 6, 5), (5, 5, 6), (5, 6, 6), (6, 5, 6)}, and the downsampled point cloud is ={(3, 3, 3), (3, 3, 4), (4, 4, 3), (4, 4, 4)}. The original point cloud is divided into sub-point clouds according to the downsampled point cloud. The downsampled point cloud contains 4 points, and the sub-point cloud corresponding to each point is , , , .
[0097] For another example, the downsampling parameter s = 5 / 2, and the original point cloud V = {(2, 2, 2), (2, 2, 3), (2, 2, 4), (2, 2, 0), (2, 2, 1), (2, 0, 0), (0, 0, 0)}. The downsampled point cloud is ={(1, 1, 1), (1, 1, 0), (1, 0, 0), (0, 0, 0)}. The downsampled point cloud contains 4 points. The original point cloud is divided into sub-point clouds according to the downsampled point cloud, and the sub-point cloud corresponding to each point is , , , .
[0098] According to the geometric coordinates of each point in the downsampled point cloud and the downsampling parameter, determine the set of potential original point cloud coordinate information corresponding to each point in the downsampled point cloud. Specifically, the set of coordinate information of the points in the potential original point cloud corresponding to the j-th point in the downsampled point cloud is expressed as:
[0099] ,
[0100] where is the set of coordinate information of the points in the potential original point cloud corresponding to the j-th point in the downsampled point cloud; s is the downsampling parameter; , and are the abscissa component, ordinate component, and vertical coordinate component of the j-th point in the downsampled point cloud respectively; , and are the abscissa component, ordinate component, and vertical coordinate component of the i-th point in the potential original point cloud respectively; represents the integer domain; round represents the rounding operation to the nearest integer.
[0101] For example, the downsampling parameter s = 4 / 3, the downsampled point cloud contains 4 points, and the downsampled point cloud ={(1, 1, 1), (1, 1, 2), (2, 2, 1), (2, 2, 2)}. The set of potential original point cloud coordinate information corresponding to each point is , , , .
[0102] For another example, the downsampling parameter s = 7 / 5, the downsampled point cloud contains 4 points, and the downsampled point cloud ={(3, 3, 3), (3, 3, 4), (4, 4, 3), (4, 4, 4)}, and the set of potential original point cloud coordinate information corresponding to each point is , , , .
[0103] For another example, the downsampling parameter s = 5 / 2, the downsampled point cloud contains 4 points, and the downsampled point cloud ={(1, 1, 1), (1, 1, 0), (1, 0, 0), (0, 0, 0)}, and the set of potential original point cloud coordinate information corresponding to each point is , , , . contains 27 points, contains 18 points, contains 12 points, contains 8 points.
[0104] For each point in the downsampled point cloud, according to the sub-point cloud corresponding to the point and the set of coordinate information of the points in the potential original point cloud, query the occupancy information of all points in the set of coordinate information of the points in the potential original point cloud to obtain the target information. Specifically, respectively determine whether each point in the set of coordinate information of the points in the corresponding potential original point cloud belongs to the sub-point cloud. If it belongs to the sub-point cloud, the occupancy information of this point is 1, otherwise it is 0, until the judgment operation of each point in the set of coordinate information of the points in the corresponding potential original point cloud is completed, and the target information of the points in the downsampled point cloud is obtained.
[0105] For example, determine whether the k-th point in the set of coordinate information of the points in the corresponding potential original point cloud belongs to the sub-point cloud
[0106] ,
[0107] where, is the target information; is the indicator function, and its function value is 1 when the internal event is true, otherwise it is 0; is the number of points within the set of coordinate information of the points corresponding to the j-th point in the downsampled point cloud; M is the number of points in the downsampled point cloud.
[0108] For example, when the downsampling parameter s = 4 / 3, the original point cloud V = {(1, 1, 1), (1, 1, 3), (2, 2, 1), (3, 3, 1), (2, 2, 3), (2, 3, 3), (3, 2, 3), (3, 3, 3)}, and the downsampled point cloud is ={(1, 1, 1), (1, 1, 2), (2, 2, 1), (2, 2, 2)}. The target information corresponding to each point in the downsampled point cloud is , , , . When the downsampling parameter s = 4 / 3, the corresponding relationships among the original point cloud, the downsampled point cloud, the potential original point cloud, and the target information are shown in Table 1.
[0109] Another example, when the downsampling parameter s = 7 / 5, the original point cloud V = {(4, 4, 4), (4, 4, 5), (5, 6, 4), (6, 6, 4), (6, 6, 5), (5, 5, 6), (5, 6, 6), (6, 5, 6)}, and the downsampled point cloud is ={(3, 3, 3), (3, 3, 4), (4, 4, 3), (4, 4, 4)}. The target information corresponding to each point in the downsampled point cloud is , , , . When the downsampling parameter s = 7 / 5, the corresponding relationships among the original point cloud, the downsampled point cloud, the potential original point cloud, and the target information are shown in Table 2.
[0110] Another example, when the downsampling parameter s = 5 / 2, the original point cloud V = {(2, 2, 2), (2, 2, 3), (2, 2, 4), (2, 2, 0), (2, 2, 1), (2, 0, 0), (0, 0, 0)}, and the downsampled point cloud is ={(1, 1, 1), (1, 1, 0), (1, 0, 0), (0, 0, 0)}. The downsampled point cloud contains 4 points, and the target information corresponding to each point is , , , . When the downsampling parameter s = 5 / 2, the corresponding relationships among the original point cloud, the downsampled point cloud, the potential original point cloud, and the target information are shown in Table 3.
[0111] Table 1
[0112]
[0113] Table 2
[0114]
[0115] Table 3
[0116]
[0117] In the above steps S210 to S220, the original point cloud is downsampled by the downsampling parameter to reduce the number of points, and the downsampled point cloud and the target information of each point in the downsampled point cloud are obtained. The target information can reflect the one-to-one or one-to-many mapping information between the downsampled point cloud and the original point cloud, so that when performing point cloud reconstruction, instead of directly scaling up the downsampled point cloud, the target information is used for point cloud geometric super-resolution, thereby achieving the purpose of reducing or even removing distortion.
[0118] Please refer to Figure 3 , in some embodiments, step S130 may include but is not limited to steps S310 to S330:
[0119] Step S310, according to the geometric coordinates of each point of the downsampled point cloud and the preset distance parameter, determine the set of neighbor coordinate information of each point in the downsampled point cloud;
[0120] Step S320, perform voxelization processing on the downsampled point cloud to obtain the downsampled point cloud represented by voxels;
[0121] Step S330, according to the downsampled point cloud represented by voxels and the set of neighbor coordinate information, query the occupancy situation of all neighbors in the set of neighbor coordinate information of each point in the downsampled point cloud, and obtain the neighbor occupancy information of each point in the downsampled point cloud.
[0122] In step S310 of some embodiments, the preset distance parameter includes the distance parameters of 3 coordinate components. According to the preset distance parameter, the distance calculation is respectively performed on the coordinate components of the geometric coordinates of each point of the downsampled point cloud, and the set of neighbor coordinate information of each point in the downsampled point cloud is obtained.
[0123] For example, if the j-th point in the downsampled point cloud is represented as , and the preset distance parameters are (0, -1, 0) and (0, 1, 0), then The set of neighbor coordinate information of is represented as .
[0124] In step S320 of some embodiments, voxelization is a process of converting three-dimensional point cloud data into a regular grid representation. During voxelization, each point in the downsampled point cloud is mapped to a cube cell (voxel) of a fixed size according to its coordinates in three-dimensional space. The unit length is selected as the voxel size, that is, the side length of each voxel is 1 unit. In this case, each point in the downsampled point cloud will be mapped to a voxel grid coordinate (x, y, z) according to its coordinates, that is, a 3D (three-dimensional) cube at the position (x, y, z). At the position (x, y, z) where there is a point, the value is 1, and at other coordinate positions that are not the downsampled point cloud, the value is 0.
[0125] In step S330 of some embodiments, for the set of neighbor coordinate information of each point in the downsampled point cloud, query the downsampled point cloud represented by the above voxelization according to each point in the set. If there is an occupied position, the value is 1, otherwise it is 0, to obtain the neighbor occupancy information of each point in the downsampled point cloud.
[0126] For example, the original point cloud V = {(1, 1, 1), (1, 1, 3), (2, 2, 1), (3, 3, 1), (2, 2, 3), (2, 3, 3), (3, 2, 3), (3, 3, 3)}. After 4 / 3 times downsampling of V, the downsampled point cloud = {(1, 1, 1), (1, 1, 2), (2, 2, 1), (2, 2, 2)}. For simplicity of illustration, the set of neighbor coordinate information of the downsampled point cloud . The set of neighbor coordinate information of (1, 1, 1) is {(1, 0, 1), (1, 2, 1)}. The occupancy situation of neighbor (1, 0, 1) is 0, and the occupancy situation of neighbor (1, 2, 1) is 0. The neighbor occupancy information of (1, 1, 1) is [0, 0]. The set of neighbor coordinate information of (1, 1, 2) is {(1, 0, 2), (1, 2, 2)}. The occupancy situation of neighbor (1, 0, 2) is 0, and the occupancy situation of neighbor (1, 2, 2) is 0. The neighbor occupancy information of (1, 1, 2) is [0, 0]. The set of neighbor coordinate information of (2, 2, 1) is {(2, 1, 1), (2, 3, 1)}. The occupancy situation of neighbor (2, 1, 1) is 0, and the occupancy situation of neighbor (2, 3, 1) is 0. The neighbor occupancy information of (2, 2, 1) is [0, 0]. The set of neighbor coordinate information of (2, 2, 2) is {(2, 1, 2), (2, 3, 2)}. The occupancy of neighbor (2, 1, 2) is 0, and the occupancy of neighbor (2, 3, 2) is 0. Neighbor occupancy information of (2, 2, 2) is [0, 0].
[0127] In the generated voxel grid, the value of each voxel is a binary signal, and this binary signal is an event within the voxel. If the value of the voxel is 1, the event within the voxel is true, indicating that there is a point within the voxel and the voxel is occupied. In this way, the originally sparse point cloud data is transformed into a regular and unified volume model, which is convenient for subsequent processing and analysis.
[0128] Through the above steps S310 to S330, the neighbor occupancy information of each point in the downsampled point cloud can be obtained.
[0129] Please refer to Figure 4 , in some embodiments, step S140 may include but is not limited to steps S410 to S430:
[0130] Step S410, the downsampling parameter is , where n is a natural number, and p and q are relatively prime positive integers, q < p < 2q;
[0131] Step S420, according to p and q, determine the correspondence between the coordinate components of the downsampled point cloud and the coordinate components of the original point cloud. The correspondence includes a one-to-one or one-to-two relationship;
[0132] Step S430, according to the correspondence of the 3 coordinate components of each point in the downsampled point cloud, group those with the same correspondence into one category to obtain 8 point cloud clustering clusters.
[0133] In step S410 of some embodiments, the downsampling parameter s is , p and q are relatively prime positive integers, q < p < 2q. When n is 0, s = p / q, 1 < s < 2. When n is a natural number, s > 2, and the original point cloud can be downsampled once with a downsampling parameter of (the reconstruction method can be based on the disclosed method) to obtain the downsampled point cloud as the new original point cloud to be compressed and the new downsampling parameter s n = p / q, where p and q are relatively prime positive integers, q < p < 2q.
[0134] In step S420 of some embodiments, for the downsampling parameter s = p / q, within every p unit spaces, the coordinates are quantized into q discrete values. During the quantization process, each coordinate value is mapped to the interval [0, p - 1], and according to the ratio of p and q, it is mapped to the new discrete value interval [0, q - 1], such that the original continuous coordinate values are compressed into q discrete values. The coordinate components of the original point cloud include the horizontal coordinate component, the vertical coordinate component, and the vertical coordinate component. For each point of the original point cloud, the horizontal coordinate component, the vertical coordinate component, and the vertical coordinate component of the corresponding point are quantized according to the downsampling parameter respectively. The horizontal coordinate component, the vertical coordinate component, and the vertical coordinate component of the corresponding point are divided by the downsampling parameter respectively, and the calculation result of the division operation is rounded to obtain the discrete value of the horizontal coordinate component, the discrete value of the vertical coordinate component, and the discrete value of the vertical coordinate component of the corresponding point. Taking the quantization process of the horizontal coordinate component of the i-th point in the original point cloud as an example, the calculation method of quantization is expressed as:
[0135] xd[i]=round(x[i]*q / p),
[0136] where x[i] is the horizontal coordinate component of the i-th point in the original point cloud; xd[i] is the discrete value of the horizontal coordinate component of the i-th point in the original point cloud; round is the rounding operation; * represents the multiplication operation; / represents the division operation; q is the denominator of the downsampling parameter, and p is the numerator of the downsampling parameter.
[0137] Given the original point cloud, during the process of downsampling the original point cloud according to a downsampling parameter greater than 1 and less than 2, the horizontal, vertical, and vertical coordinates of the points in the original point cloud will undergo non-uniform quantization. During the quantization process on each coordinate axis, there may be a one-to-one or one-to-two situation, that is, under each coordinate axis, one coordinate or two coordinates corresponding to this coordinate axis in the original point cloud can be matched to one coordinate of this coordinate axis in the downsampled point cloud. Specifically, for each point in the original point cloud, its coordinates may present the following eight situations: the horizontal, vertical, and vertical coordinates are all one-to-one; the vertical and vertical coordinates are one-to-one, and the horizontal coordinate is one-to-two; the horizontal and vertical coordinates are one-to-one, and the vertical coordinate is one-to-two; the horizontal and vertical coordinates are one-to-one, and the vertical coordinate is one-to-two; the vertical coordinate is one-to-one, and the horizontal and vertical coordinates are one-to-two; the vertical coordinate is one-to-one, and the horizontal and vertical coordinates are one-to-two; the horizontal coordinate is one-to-one, and the vertical and vertical coordinates are one-to-two; the horizontal, vertical, and vertical coordinates are all one-to-two.
[0138] Specifically, the three coordinate components of each point in the original point cloud are quantized according to the downsampling parameters to obtain the discrete values of the three coordinate components of each point (downsampled point cloud). The frequency of occurrence of the discrete values of each coordinate component is counted to identify the repeatedly occurring quantization values according to the frequency, such as quantization collisions caused by the proximity of the original coordinates (the coordinates of the points in the original point cloud). The discrete values of the coordinate components and the frequency of occurrence of the discrete values are recorded in the histogram array hist for easy access to the data. The correspondence between the coordinate components of the downsampled point cloud and the coordinate components of the original point cloud is determined according to the frequency. When n is 0, the frequency of the coordinate component is 1 or 2. If the frequency is 1, it means that the correspondence between the coordinate components of the downsampled point cloud and the coordinate components of the original point cloud is one-to-one. If the frequency is 2, it means that the correspondence between the coordinate components of the downsampled point cloud and the coordinate components of the original point cloud is one-to-two.
[0139] In step S430 of some embodiments, according to the correspondence of the three coordinate components of each point in the downsampled point cloud, those with the same correspondence are grouped into one category, and those with different correspondences are grouped into different categories, obtaining eight point cloud clustering clusters, and the point cloud clustering clusters have clustering category values.
[0140] The discrete values with a frequency greater than 1 are respectively selected from the discrete values of each coordinate component to obtain the repeated discrete values of the coordinate components. The original point cloud is clustered according to the repeated discrete values of each coordinate component in the downsampled point cloud and the original point cloud. Based on this three-dimensional voxel coordinate information, the classification result in the three-dimensional space is mapped to a unique clustering number to obtain a clustering category value, and the clustering category value is any integer value from 0 to 7 to cluster the original point cloud into eight different categories.
[0141] Specifically, for the repeated discrete values, the repeated discrete values of the coordinate components are stored in the array dup, and the coordinate deviation corresponding to the repeated discrete values is calculated and stored in the array x_ch. The calculation process of the coordinate deviation is as follows: The repeated discrete value of the corresponding coordinate component of the point in the downsampled point cloud is upsampled according to the downsampling parameters, that is, the downsampling parameters and the repeated discrete value of the corresponding coordinate component of the point in the downsampled point cloud are multiplied, and the result of the multiplication operation is rounded to an integer to obtain an intermediate component. Taking the abscissa component as an example, the repeated discrete value of the abscissa component of the point in the downsampled point cloud is x_d, and the intermediate component is expressed as round(p / q * x_d), where round represents the rounding operation. There is a mapping relationship between the points in the original point cloud and the points in the downsampled point cloud. The coordinate component of the corresponding point in the original point cloud is subtracted from the intermediate component to obtain the coordinate deviation, which is used to correct the quantization error of the downsampled point cloud.
[0142] For each point in the downsampled point cloud, perform a modulo operation on each coordinate component of the point in the downsampled point cloud according to the denominator q of the downsampling parameter to obtain the remainder of each coordinate component of the point in the downsampled point cloud. If the remainder of the coordinate component is not in the array dup, upsample the coordinate component of the point in the downsampled point cloud according to the downsampling parameter, add the three upsampled coordinate components to the coordinate deviation of the corresponding coordinate component to obtain the reference coordinate component, and judge the corresponding relationship between the coordinate component of the point in the downsampled point cloud and the reference coordinate component. If the corresponding relationship is one-to-one, the component clustering value of the coordinate component is 0. If the corresponding relationship is one-to-two, the component clustering value of the coordinate component is 1. Perform a weighted calculation on the component clustering values of each coordinate component of the point in the downsampled point cloud to obtain the clustering category value. The component clustering values of each coordinate component of the point in the downsampled point cloud form a three-dimensional classification vector child. Perform a weighted calculation on each element of the three-dimensional classification vector to determine the clustering category value. The calculation formula of the clustering category value is expressed as:
[0143] c = abs(child[0]) + 2 * abs(child[1]) + 4 * abs(child[2]),
[0144] where c is the clustering category value; abs represents the absolute value; child[0] represents the component clustering value of the horizontal coordinate component; child[1] represents the component clustering value of the vertical coordinate component; child[2] represents the component clustering value of the vertical coordinate component; * represents the multiplication operation.
[0145] For example, the horizontal coordinate component of a point in the downsampled point cloud and the horizontal coordinate component of the point in the original point cloud are in a one-to-two relationship, child[0] is 1, and the vertical coordinate component and the vertical coordinate component of the point in the original point cloud are in a one-to-two relationship, then child[1] is 1, and the vertical coordinate component and the vertical coordinate component of the point in the original point cloud are in a one-to-one relationship, child[2] is 0, then the clustering category value is 1 + 2 * 1 + 4 * 0 = 3.
[0146] The clustering category value of the point cloud clustering cluster is used to indicate the number of points in the original point cloud corresponding to the points in the downsampled point cloud. The number of points in the original point cloud with a mapping relationship and the clustering category value c has the following relationship:
[0147] .
[0148] For c = 0, the downsampling of the original point cloud is a completely one-to-one quantization, and each downsampled point corresponds to an original point in the original point cloud. For c = 1, 2, and 4, during the downsampling process of the original point cloud, the quantization of one coordinate axis is two-to-one, and each point in the downsampled point cloud may correspond to two original points in the original point cloud. For c = 3, 5, and 6, during the downsampling process of the original point cloud, the quantization of two coordinate axes is two-to-one, and each point in the downsampled point cloud may correspond to four original points in the original point cloud. For c = 7, during the downsampling process of the original point cloud, the quantization of three coordinate axes is two-to-one, and each point in the downsampled point cloud corresponds to eight original points in the original point cloud. The actual number of original points corresponding to a point is determined by the target information of that point.
[0149] Through the above steps S410 to S430, the point coordinates in the continuous space are non-uniformly quantized and mapped to the discrete space, enabling the differentiation of different categories of point cloud data, so as to perform point cloud reconstruction category by category according to different categories of point cloud data, and then restore the original point cloud with high quality, improving the quality of point cloud compression.
[0150] Please refer to Figure 5 , Figure 5 is a schematic diagram of the correspondence before and after quantization of the x-coordinate component (abscissa component) of the point cloud. The downsampling parameter is expressed as S = 4 / 3. The upper layer shows the x-coordinate components of the original point cloud a, b, c, and d, and the lower layer shows the x-coordinate components of the downsampled point cloud A, B, and C. The two arrows of c and d point to the coordinate component of the same downsampled point cloud C, indicating that quantization collision occurs between the original point cloud c and d. The repeated discrete value 2 in the downsampled point cloud C is recorded in the index array dup. According to the downsampling parameter, the repeated discrete value of point C is upsampled to obtain an intermediate component of 3, and the x-coordinate components of the points in the original point cloud corresponding to the repeated discrete value are [2, 3]. Subtracting the x-coordinate component [2, 3] from the intermediate component 3, the coordinate deviation [-1, 0] is obtained and stored in the array x_ch.
[0151] Modulo calculations are performed on the x-coordinate components of A, B, and C in the downsampled point cloud according to q = 3, and the remainders of A, B, and C are obtained as 0, 1, and 2 respectively. The remainders of the x-coordinate components of points A and B are 0 and 1 respectively, which are not in the index array dup, so the component clustering value of the x-coordinate component is 0. The remainder of the x-coordinate component of point C is 2, which is in the index array dup. According to the downsampling parameter, the coordinate component of point C in the downsampled point cloud is upsampled, that is, the abscissa component of point C is multiplied by s, and the upsampled x-coordinate component is added with the coordinate deviation in the array x_ch and rounded to obtain the reference coordinate components of 2 and 3. Since the correspondence between point C in the downsampled point cloud and the reference coordinate component is one-to-two, the component clustering value of point C is obtained as 1.
[0152] Please refer toFigure 6 , Figure 6 It is a schematic diagram of the corresponding relationship before and after quantization of the x - coordinate component of the point cloud. The downsampling parameter is expressed as S = 7 / 5. The upper layer shows the x - coordinate components of the original point cloud a, b, c, d, e, f, and g, and the lower layer shows the x - coordinate components of the downsampled point cloud A, B, C, D, and E. The two arrows of b and c point to the x - coordinate component of the same downsampled point cloud B, and the two arrows of f and g point to the x - coordinate component of the same downsampled point cloud E, indicating that quantization collisions occur between the original point cloud b and c, f and g. Taking points B and E as examples, the repeated discrete values of quantization are 1 and 4, and [1, 4] are recorded in the index array dup. According to the downsampling parameter, the repeated discrete values of points B and E are upsampled, and the intermediate components are 1 and 6. The x - coordinate components of the points of the original point cloud corresponding to the repeated discrete values are [1, 2, 5, 6]. Subtract the intermediate component 1 from the x - coordinate components [1, 2], and subtract the intermediate component 6 from the x - coordinate components [5, 6], obtaining the coordinate deviation [0, 1, -1, 0], and store the coordinate deviation in the array x_ch.
[0153] Perform modulo calculations on the x - coordinate components of A, B, C, D, and E in the downsampled point cloud according to q = 5, and the remainders of A, B, C, D, and E are 0, 1, 2, 3, and 4 respectively. The remainders of the x - coordinate components of A, C, and D are 0, 2, and 3 respectively, and these remainders are not in the index array dup, so the component clustering value of the x - coordinate component is 0. The remainder of the x - coordinate component of point B is 1, and the remainder of the x - coordinate component of point E is 4. These remainders are in the index array dup. Multiply the x - coordinate component of point B by s, add the coordinate deviation [0, 1] in the array x_ch and take the integer to obtain the reference coordinate components 1 and 2. Since the corresponding relationship between the downsampled point cloud B and the reference coordinate components is one - to - two, the component clustering value of point B is 1. Multiply the x - coordinate component of point E by s, add the coordinate deviation [-1, 0] in the array x_ch and take the integer to obtain the reference coordinate components 5 and 6. Since the corresponding relationship between the downsampled point cloud B and the reference coordinate components is one - to - two, the component clustering value of point E is 1.
[0154] Please refer to Figure 7 , in some embodiments, step S140 may include but is not limited to steps S710 to S730:
[0155] Step S710, the downsampling parameter is , where n is a positive integer, and p and q are relatively prime positive integers, and q < p < 2q;
[0156] Step S720, according to n, p, and q, determine the corresponding relationship between the coordinate components of the downsampled point cloud and the coordinate components of the original point cloud, and the corresponding relationship includes a one - to - n + 1 or one - to - n + 2 relationship;
[0157] Step S730: According to the corresponding relationships of the three coordinate components of each point in the downsampled point cloud, group those with the same corresponding relationships into one category, obtaining 8 point cloud clustering clusters.
[0158] In step S710 of some embodiments, the downsampling parameter s is , where p and q are relatively prime positive integers, q < p < 2q, and when n is a positive integer, s is a non-integer greater than 2.
[0159] In step S720 of some embodiments, according to n, p, and q, determine that the downsampling parameter is a non-integer greater than 2. Refer to step S420 to determine the corresponding relationships between the coordinate components of the downsampled point cloud and the coordinate components of the original point cloud. The corresponding relationships include a relationship of one pair of n + 1 or one pair of n + 2. Figure 8 is a schematic diagram of the corresponding relationships before and after quantization of the x coordinate component of the point cloud. As Figure 8 shown, the downsampling parameter is expressed as S = 5 / 2, and the downsampling parameter is a non-integer greater than 2. In the process of quantizing the original point cloud according to the downsampling parameter, the corresponding relationship between the coordinate components of the downsampled point cloud and the coordinate components of the original point cloud is one-to-many. For example, the coordinate components of point A correspond to the coordinate components of two points a and b in the original point cloud, and the coordinate components of point B correspond to the coordinate components of three points c, d, and e in the original point cloud.
[0160] In step S730 of some embodiments, according to the corresponding relationships of the three coordinate components of each point in the downsampled point cloud, group those with the same corresponding relationships into one category and those with different corresponding relationships into different categories, obtaining 8 point cloud clustering clusters. The corresponding relationships of the coordinate components of the downsampled point cloud in the 8 point cloud clustering clusters are respectively: both the abscissa, ordinate, and vertical coordinate are one pair of n + 1; the ordinate and vertical coordinate are one pair of n + 1, and the abscissa is one pair of n + 2; the abscissa and vertical coordinate are one pair of n + 1, and the ordinate is one pair of n + 2; the abscissa and ordinate are one pair of n + 1, and the vertical coordinate is one pair of n + 2; the vertical coordinate is one pair of n + 1, and the abscissa and ordinate are one pair of n + 2; the ordinate is one pair of n + 1, and the abscissa and vertical coordinate are one pair of n + 2; the abscissa is one pair of n + 1, and the ordinate and vertical coordinate are one pair of n + 2; both the abscissa, ordinate, and vertical coordinate are one pair of n + 2.
[0161] The point cloud clustering cluster has a clustering category value, and the clustering category value is any integer value from 0 to 7 to cluster the original point cloud into eight different categories. The calculation of the clustering category value can refer to step S430 and will not be elaborated here.
[0162] Through the above steps S710 to S730, different categories of downsampled point clouds can be distinguished, so as to perform point cloud reconstruction by category according to the characteristics of different categories of point clouds, thereby improving the quality of point cloud coding.
[0163] At the decoding end, after the decoded downsampled point cloud is geometrically scaled up, the above eight clustering situations may occur. Only when the downsampling parameter s is greater than 1 and less than 2 and the clustering class value c = 0 will there be no distortion introduced and the point cloud information can be fully restored. In other cases, distortion will be introduced because of newly added incorrect points or missing correct points, and the original point cloud cannot be fully restored. If the original point cloud is to be fully restored, the clustering class value of each point in the downsampled point cloud needs to be 0, but this situation is extremely rare. To restore the original point cloud with high quality, other information in addition to the downsampled point cloud is also needed. In the embodiments of the present application, neighbor occupancy information is used as supplementary information. The neighbor occupancy information can be used to assist in point cloud reconstruction. In this way, the point cloud reconstruction can not directly scale up the downsampled point cloud due to the lack of neighbor occupancy information, but can use this neighbor occupancy information for point cloud geometric super-resolution, thereby reducing or even removing distortion. To improve the quality of point cloud coding, the embodiments of the present application use target information and neighbor occupancy information as information pairs for network training, and train an interpolation network for each category of information pair to interpolate the downsampled point cloud of the corresponding category based on the interpolation network, realizing high-quality point cloud reconstruction.
[0164] Please refer to Figure 9 , in some embodiments, step S150 may include but is not limited to steps S910 to S930:
[0165] Step S910, according to the neighbor occupancy information of each point in each point cloud clustering cluster, input the interpolation network of each clustering cluster to obtain the predicted target information of each point;
[0166] Step S920, according to the predicted target information and target information of each point in each point cloud clustering cluster, calculate the loss function of the interpolation network of each clustering cluster;
[0167] Step S930, minimize the loss function to adjust the interpolation network of each clustering cluster to obtain the optimized interpolation network parameters of each clustering cluster.
[0168] In step S910 of some embodiments, the original point cloud can be decomposed into a downsampled point cloud and neighbor occupancy information. Different point cloud clustering clusters have different clustering class values, and different clustering class values correspond to different categories. The neighbor occupancy information of the points in the downsampled point cloud with the same clustering class value is input into the interpolation network corresponding to the clustering class value, and the interpolation network is used to enhance the downsampled point cloud to obtain the predicted target information of the points in the downsampled point cloud.
[0169] It should be noted that when the downsampling parameter is greater than 1 and less than 2, if the clustering category value of the point cloud clustering cluster is 0, no additional neighbor occupancy information is required, and the training of the interpolation network for this clustering cluster can be skipped. If the clustering category values of the point cloud clustering cluster are 1, 2, and 4, the interpolation network of this clustering cluster needs to be used to predict the occupancy information of two points. If the clustering category values of the point cloud clustering cluster are 3, 5, and 6, the interpolation network of this clustering cluster needs to be used to predict the occupancy information of four points. If the clustering category value corresponding to the category is 7, the interpolation network of this clustering cluster needs to be used to predict the occupancy information of eight points. When the downsampling parameter is greater than 2, if the clustering category value of the point cloud clustering cluster is 0, the interpolation network of this clustering cluster needs to be used to predict the occupancy information of points. If the clustering category values of the point cloud clustering cluster are 1, 2, and 4, the interpolation network of this clustering cluster needs to be used to predict the occupancy information of points. If the clustering category values of the point cloud clustering cluster are 3, 5, and 6, the interpolation network of this clustering cluster needs to be used to predict the occupancy information of points. If the clustering category value corresponding to the category is 7, the interpolation network of this clustering cluster needs to be used to predict the occupancy information of points. Point cloud geometry often exhibits geometric similarity, that is, when the neighbor occupancy information of points is the same, the target information of this point is often also the same.
[0170] To improve the efficiency of point cloud compression, the interpolation network can adopt a lightweight network, which has fewer model parameters. It can be a multi-layer perceptron with only one hidden layer, and the number of neurons in the hidden layer can be set to a very small positive number such as 32. The multi-layer perceptron includes an input layer, a hidden layer, and an output layer. A Sine activation function is connected after the hidden layer to provide non-linear fitting ability and learn the high-frequency information of point cloud data. A Sigmoid activation function is connected after the output layer to constrain the output value range within [0, 1].
[0171] In step S920 of some embodiments, the downsampling parameter s is , where p and q are relatively prime positive integers, q < p < 2q, and when n is 0, the prediction of the target information can be regarded as = 2, 4, 8 binary classification problems. The binary cross-entropy loss function is used for overfitting of the interpolation network. According to the predicted target information and the target information of each point in each point cloud clustering cluster, the loss function of the interpolation network of each clustering cluster is calculated. The calculation method of the loss function is expressed as:
[0172] ,
[0173] where, is the loss function; BCE is the binary cross-entropy loss function; is the number of points in the downsampled point cloud with the clustering category value of c; is an interpolation network; is the neighbor occupancy information of the j-th point in the point cloud clustering cluster; is the target information of the j-th point in the point cloud clustering cluster; are the network parameters of the interpolation network; is the predicted target information of the j-th point in the point cloud clustering cluster output by the interpolation network.
[0174] In step S930 of some embodiments, the loss function of each point cloud clustering cluster is minimized to adjust the network parameters of the interpolation network corresponding to the respective point cloud clustering clusters, and the optimized network parameters of the interpolation network for each point cloud clustering cluster are obtained.
[0175] Through the above steps S910 to S930, a lightweight overfitting interpolation network can be obtained to accurately predict the target information at the decoding end based on the lightweight overfitting interpolation network, so as to recover the original point cloud from the downsampled point cloud with high quality at the decoding end.
[0176] In step S160 of some embodiments, in order to maintain the integrity of the point cloud data, the downsampled point cloud is losslessly compressed by a geometry-based point cloud compression algorithm (G-PCC), and the compressed bitstream file is used as the downsampled point cloud encoding data. The interpolation network parameters of the interpolation network for each point cloud clustering cluster are losslessly compressed through the fpzip compression library to obtain network encoding data. The interpolation network constructed based on the network encoding data is used to perform point cloud reconstruction on the downsampled point cloud encoding data at the decoding end to obtain high-precision three-dimensional coordinate information and restore the complete three-dimensional model of the object.
[0177] Please refer to Figure 10 , in some embodiments, the three-dimensional point cloud decoding method is applied to the decoding end, and may include but is not limited to steps S1010 to S1050:
[0178] Step S1010, obtain the downsampling parameters, the downsampled point cloud, and the interpolation network parameters;
[0179] Step S1020, determine the neighbor occupancy information of each point in the downsampled point cloud;
[0180] Step S1030, cluster the downsampled point cloud according to the downsampling parameters to obtain downsampled point cloud clustering clusters;
[0181] Step S1040, according to the neighbor occupancy information of each point in each downsampled point cloud clustering cluster, input the interpolation network corresponding to the interpolation network parameters of each clustering cluster to obtain the predicted target information of each point;
[0182] Step S1050: Obtain the reconstructed point cloud according to the predicted target information of each point in the downsampled point cloud.
[0183] In step S1010 of some embodiments, the encoding end combines the downsampled point cloud encoding data, the network encoding data, and the downsampling parameters, and forms a final compressed file for storage or transmission by combining the losslessly compressed bitstream files. The encoding end sends the compressed file to the decoding end to reconstruct the point cloud of the downsampled point cloud using the interpolation network at the decoding end. The decoding end receives the compressed file, stores the compressed file in the storage medium, reads the compressed file from the storage medium, obtains the downsampling parameters from the compressed file, decodes the downsampled point cloud encoding data of the compressed file through the geometry-based point cloud compression algorithm to obtain the downsampled point cloud, and decodes the network encoding data through the fzip compression library to obtain the interpolation network parameters.
[0184] In step S1020 of some embodiments, referring to steps S310 to S330, according to the geometric coordinates of each point in the downsampled point cloud and the preset distance parameter, determine the set of neighbor coordinate information of each point in the downsampled point cloud, perform voxelization processing on the downsampled point cloud to obtain the downsampled point cloud represented by voxels, and query the occupancy situation of all neighbors in the set of neighbor coordinate information of each point in the downsampled point cloud according to the downsampled point cloud represented by voxels and the set of neighbor coordinate information to obtain the neighbor occupancy information of each point in the downsampled point cloud.
[0185] In step S1030 of some embodiments, according to steps S410 to S430 or steps S710 to S730, cluster the downsampled point cloud according to the downsampling parameters to obtain the downsampled point cloud clustering clusters.
[0186] In step S1040 of some embodiments, input the neighbor occupancy information of each point in each downsampled point cloud clustering cluster into the interpolation network corresponding to the interpolation network parameters of each downsampled point cloud clustering cluster to obtain the predicted target information of each point.
[0187] In step S1050 of some embodiments, perform point cloud reconstruction on each point of the downsampled point cloud according to the predicted target information of each point of the downsampled point cloud, and merge and deduplicate the point clouds after reconstruction of different downsampled point cloud clustering clusters to obtain the reconstructed point cloud.
[0188] Through the above steps S1010 to S1050, the original point cloud can be reconstructed from the downsampled point cloud with high quality, thereby achieving a smaller bitstream while reducing visual distortion. The interpolation network is very lightweight, making the codeword overhead brought by transmitting these networks achieve a better rate-distortion equilibrium point compared to the improvement in point cloud quality, reducing the distortion of the reconstructed point cloud while saving the bitstream. Moreover, the training of the interpolation network is at the encoding end, and the additional time overhead at the decoding end is only the time overhead for the interpolation network to act on the decoded point cloud, improving the efficiency of point cloud reconstruction.
[0189] To further improve the performance, interpolation networks of multiple categories can be merged into one network with an output dimension of This not only reduces the computational and storage overhead but also further reduces the codeword overhead. It should be noted that since the merged network needs to predict the outputs of interpolation networks of multiple categories simultaneously, its prediction accuracy may decrease, resulting in a decrease in interpolation accuracy and an increase in visual distortion. Therefore, more refined control of the model training process is required to achieve better performance and a better rate-distortion equilibrium point.
[0190] The 3D point cloud encoding method of the embodiments of this application includes: in the encoding stage, clustering the input point cloud according to the fractional downsampling rate, constructing mapping data by category based on the clustered point cloud and the downsampled point cloud, and training a lightweight interpolation network by category using this data. Compress and encode the network parameters of the trained interpolation network and the downsampled point cloud separately and package them into a bitstream file. In the decoding stage, decompress the trained network parameters from the bitstream file to reconstruct the interpolation network and decode the downsampled point cloud, cluster the decoded downsampled point cloud according to the downsampling rate, and apply the interpolation network by category to the clustered downsampled point cloud for point cloud enhancement, thereby achieving smaller visual distortion under lower bitrate conditions and reaching an ideal rate-distortion equilibrium point.
[0191] Test the 3D point cloud encoding method of the embodiments of this application on the MPEG Cat1 dataset. Use the octree-based G-PCC software MPEG-PCC-TMC13 v27.0 as the lossless encoder for the downsampled point cloud, and train the interpolation network using the Adam optimizer, set the learning rate to 0.001, and the total number of training epochs to 150. Compared with the Peak Signal-to-Noise Ratio (PSNR) of G-PCC, the 3D point cloud encoding method of the embodiments of this application significantly improves the quality of the decoded point cloud, with an average PSNR of 72.38%, enabling the downsampled point cloud to be restored to the original point cloud with high quality and reducing visual distortion.
[0192] Please refer to Figure 11, The embodiments of the present application further provide a three-dimensional point cloud encoding device, which can implement the above three-dimensional point cloud encoding method. The three-dimensional point cloud encoding device includes:
[0193] A first acquisition module 1110, configured to acquire an original point cloud and a downsampling parameter; the downsampling parameter is a non-integer greater than 1;
[0194] A downsampling module 1120, configured to downsample the original point cloud according to the downsampling parameter to obtain a downsampled point cloud and the target information of each point in the downsampled point cloud;
[0195] A first determination module 1130, configured to determine the neighbor occupancy information of each point in the downsampled point cloud;
[0196] A first clustering module 1140, configured to cluster the downsampled point cloud according to the downsampling parameter to obtain point cloud clustering clusters;
[0197] A training module 1150, configured to train an interpolation network according to the target information and neighbor occupancy information of each point in each point cloud clustering cluster to obtain the interpolation network parameters of each optimized clustering cluster;
[0198] An encoded data generation module 1160, configured to perform lossless encoding on the downsampled point cloud to obtain downsampled point cloud encoded data, and encode the interpolation network parameters of each clustering cluster to obtain network encoded data.
[0199] The specific implementation manner of this three-dimensional point cloud encoding device is basically the same as the specific embodiments of the above three-dimensional point cloud encoding method, and will not be elaborated here.
[0200] Please refer to Figure 12 , The embodiments of the present application further provide a three-dimensional point cloud decoding device, which can implement the above three-dimensional point cloud decoding method. The three-dimensional point cloud decoding device includes:
[0201] A second acquisition module 1210, configured to acquire a downsampling parameter, a downsampled point cloud, and interpolation network parameters;
[0202] A second determination module 1220, configured to determine the neighbor occupancy information of each point in the downsampled point cloud;
[0203] A second clustering module 1230, configured to cluster the downsampled point cloud according to the downsampling parameter to obtain downsampled point cloud clustering clusters;
[0204] An inference module 1240, configured to input the interpolation network corresponding to the interpolation network parameters of each clustering cluster according to the neighbor occupancy information of each point in each downsampled point cloud clustering cluster to obtain the predicted target information of each point;
[0205] A reconstruction module 1250, configured to obtain a reconstructed point cloud according to the predicted target information of each point in the downsampled point cloud.
[0206] An embodiment of the present application also provides an electronic device, which includes a memory and a processor. The memory stores a computer program, and when the processor executes the computer program, the above-mentioned three-dimensional point cloud encoding method or three-dimensional point cloud decoding method is implemented. The electronic device can be any intelligent terminal including a tablet computer, an in-vehicle computer, etc.
[0207] Please refer to Figure 13 , Figure 13 which schematically shows the hardware structure of an electronic device in another embodiment. The electronic device includes:
[0208] A processor 1310, which can be implemented by using a general-purpose central processing unit (CPU), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits, etc., and is used to execute relevant programs to implement the technical solutions provided by the embodiments of the present application;
[0209] A memory 1320, which can be implemented in the form of a read-only memory (ROM), a static storage device, a dynamic storage device, or a random access memory (RAM), etc. The memory 1320 can store an operating system and other application programs. When implementing the technical solutions provided by the embodiments of this specification through software or firmware, the relevant program codes are stored in the memory 1320 and are called by the processor 1310 to execute the three-dimensional point cloud encoding method or three-dimensional point cloud decoding method of the embodiments of the present application;
[0210] An input / output interface 1330, which is used to implement information input and output;
[0211] A communication interface 1340, which is used to implement communication and interaction between this device and other devices, and can implement communication through a wired method (such as USB, network cable, etc.) or through a wireless method (such as a mobile network, WIFI, Bluetooth, etc.);
[0212] A bus 1350, which transmits information between various components of the device (such as the processor 1310, the memory 1320, the input / output interface 1330, and the communication interface 1340);
[0213] Among them, the processor 1310, the memory 1320, the input / output interface 1330, and the communication interface 1340 are communicatively connected to each other inside the device through the bus 1350.
[0214] The embodiments described in the embodiments of the present application are for more clearly illustrating the technical solutions of the embodiments of the present application, and do not constitute a limitation on the technical solutions provided by the embodiments of the present application. Those skilled in the art can know that with the evolution of technology and the emergence of new application scenarios, the technical solutions provided by the embodiments of the present application are also applicable to similar technical problems.
[0215] Those skilled in the art can understand that the technical solutions shown in the figures do not constitute a limitation on the embodiments of the present application, and may include more or fewer steps than shown in the figures, or combine certain steps, or different steps.
[0216] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separated, that is, they may be located in one place, or may be distributed to multiple network units. Some or all of the modules can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0217] Those of ordinary skill in the art can understand that all or some of the steps in the methods disclosed above, and the functional modules / units in the systems and devices, can be implemented as software, firmware, hardware, and their appropriate combinations.
[0218] The terms "first", "second", "third", "fourth", etc. (if any) in the specification of the present application and the above drawings are used to distinguish similar objects, and do not necessarily need to be used to describe a specific order or sequence. It should be understood that such data can be interchanged under appropriate circumstances so that the embodiments of the present application described here can be implemented in an order other than those illustrated or described here. In addition, the terms "comprising" and "having" and any variations thereof are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or device that comprises a series of steps or units does not necessarily have to be limited to those steps or units clearly listed, but may include other steps or units not clearly listed or inherent to these processes, methods, products, or devices.
[0219] It should be understood that in this application, "at least one (item)" means one or more, and "a plurality" means two or more. "And / or" is used to describe the association relationship of associated objects, indicating that there can be three relationships. For example, "A and / or B" can mean: only A exists, only B exists, and both A and B exist at the same time. Among them, A and B can be singular or plural. The character " / " generally represents an "or" relationship between the associated objects before and after. "At least one (item) of the following" or its similar expression refers to any combination of these items, including any combination of single item (item) or plural items (items). For example, at least one (item) of a, b, or c can mean: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, and c can be single or multiple.
[0220] In several embodiments provided in this application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the above division of units is only a logical function division. In actual implementation, there can be other division methods. For example, 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 displayed or discussed coupling or direct coupling or communication connection between each other can be through some interfaces. The indirect coupling or communication connection of devices or units can be in electrical, mechanical or other forms.
[0221] The units described above as separate components may or may not be physically separated. The components displayed as units may or may not be physical units, that is, they can be located in one place, or they can be distributed to multiple network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0222] In addition, each functional unit in various embodiments of this application can be integrated in a processing unit, or each unit can exist physically alone, or two or more units can be integrated in one unit. The above integrated unit can be implemented in the form of hardware or in the form of a software functional unit.
[0223] When 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 technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of this technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes multiple instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods of various embodiments of this application. The aforementioned storage medium includes: various media that can store programs, such as USB flash drives, mobile hard disks, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical discs.
[0224] The preferred embodiments of the embodiments of this application have been described above with reference to the accompanying drawings, which does not limit the scope of rights of the embodiments of this application. Any modifications, equivalent replacements, and improvements made by those skilled in the art without departing from the scope and essence of the embodiments of this application shall be within the scope of rights of the embodiments of this application.
Claims
1. A three-dimensional point cloud encoding method, characterized in that: The method comprises: Get the original point cloud and downsampling parameters; the downsampling parameter is a non-integer greater than 1, and the downsampling parameter is , where n is a natural number, p and q are mutually prime positive integers, and q <p<2q; Down-sampling the original point cloud according to the down-sampling parameters to obtain a down-sampled point cloud and target information of each point in the down-sampled point cloud; Determine neighbor occupancy information of each point in the downsampled point cloud; Clustering the downsampled point cloud according to the downsampled parameters to obtain point cloud clusters; According to the target information and neighbor occupancy information of each point in each point cloud cluster, an interpolation network is trained according to the cluster to obtain optimized interpolation network parameters of each cluster; The downsampled point cloud is losslessly encoded to obtain downsampled point cloud encoding data, and the interpolation network parameters of each cluster are encoded to obtain network encoding data.
2. The method according to claim 1, characterized in that The downsampling the original point cloud according to the downsampling parameters to obtain the downsampled point cloud and target information of each point in the downsampled point cloud includes: quantizing the coordinate component of each point in the original point cloud according to the downsampling parameter to obtain the downsampled point cloud; Each point in the downsampled point cloud corresponds to one or more points in the original point cloud, and the target information of each point in the downsampled point cloud is the placeholder information of the corresponding point in the original point cloud.
3. The method according to claim 1, characterized in that The determining of neighbor occupancy information of each point in the downsampled point cloud includes: Determine a set of neighbor coordinate information of each point in the downsampled point cloud according to the geometric coordinates of each point in the downsampled point cloud and a preset distance parameter; Performing voxel processing on the downsampled point cloud to obtain a downsampled point cloud represented by voxelization; According to the downsampled point cloud represented by voxelization and the neighbor coordinate information set, the occupancy status of all neighbors in the neighbor coordinate information set of each point in the downsampled point cloud is queried to obtain the neighbor occupancy information of each point in the downsampled point cloud.
4. The method according to claim 1, characterized in that: The step of clustering the downsampled point cloud according to the downsampled parameter to obtain a point cloud cluster includes: The downsampling parameters are , where n is a natural number, p and q are mutually prime positive integers, and q <p<2q; Determine a correspondence between coordinate components of the downsampled point cloud and coordinate components of the original point cloud according to p and q, wherein the correspondence includes a one-to-one or one-to-two relationship; According to the correspondence between the three coordinate components of each point of the downsampled point cloud, the points with the same correspondence are clustered into one category to obtain 8 point cloud clusters.
5. The method according to claim 1, characterized in that The step of clustering the downsampled point cloud according to the downsampled parameter to obtain a point cloud cluster includes: The downsampling parameters are , where n is a positive integer, p and q are mutually prime positive integers, and q <p<2q; Determine the correspondence between the coordinate components of the downsampled point cloud and the coordinate components of the original point cloud according to the n, p and q, wherein the correspondence includes a pair of n+1 or a pair of n+2; According to the correspondence between the three coordinate components of each point of the downsampled point cloud, the points with the same correspondence are clustered into one category to obtain 8 point cloud clusters.
6. The method according to claim 1, characterized in that The interpolation network is trained according to the target information and neighbor occupancy information of each point in each point cloud cluster to obtain optimized interpolation network parameters of each cluster, including: According to the neighbor occupancy information of each point in each point cloud cluster, the interpolation network of each cluster is input to obtain the predicted target information of each point; Calculating the loss function of the interpolation network of each cluster according to the predicted target information and the target information of each point in each point cloud cluster; The interpolation network parameters of each cluster are adjusted by minimizing the loss function to obtain optimized interpolation network parameters of each cluster.
7. A three-dimensional point cloud decoding method, characterized in that: The method comprises: Get downsampling parameters, downsampling point cloud and interpolation network parameters, the downsampling parameters are non-integers greater than 1, and the downsampling parameters are , where n is a natural number, p and q are mutually prime positive integers, and q <p<2q; Determine neighbor occupancy information of each point in the downsampled point cloud; Clustering the downsampled point cloud according to the downsampled parameters to obtain downsampled point cloud clusters; Inputting the neighbor occupancy information of each point in each of the downsampled point cloud clusters into the interpolation network corresponding to the interpolation network parameters of each cluster to obtain the predicted target information of each point; A reconstructed point cloud is obtained according to the predicted target information of each point of the downsampled point cloud.
8. A three-dimensional point cloud encoding device, characterized in that: The device comprises: The first acquisition module is used to acquire the original point cloud and downsampling parameters; the downsampling parameters are non-integers greater than 1, and the downsampling parameters are , where n is a natural number, p and q are mutually prime positive integers, and q <p<2q; A downsampling module, used to downsample the original point cloud according to the downsampling parameters to obtain a downsampled point cloud and target information of each point in the downsampled point cloud; A first determination module, configured to determine neighbor occupancy information of each point in the downsampled point cloud; A first clustering module, used for clustering the downsampled point cloud according to the downsampling parameters to obtain point cloud clusters; A training module, used to train an interpolation network according to the target information and neighbor occupancy information of each point in each point cloud cluster, so as to obtain optimized interpolation network parameters of each cluster; The coding data generation module is used to losslessly encode the downsampled point cloud to obtain downsampled point cloud coding data, and encode the interpolation network parameters of each cluster to obtain network coding data.
9. A three-dimensional point cloud decoding device, characterized in that: The device comprises: The second acquisition module is used to obtain downsampling parameters, downsampling point clouds and interpolation network parameters, wherein the downsampling parameters are non-integers greater than 1. , where n is a natural number, p and q are mutually prime positive integers, and q <p<2q; A second determination module is used to determine neighbor occupancy information of each point in the downsampled point cloud; A second clustering module, used for clustering the down-sampled point cloud according to the down-sampling parameters to obtain down-sampled point cloud clusters; An inference module, used for inputting the neighbor occupancy information of each point in each of the downsampled point cloud clusters into the interpolation network corresponding to the interpolation network parameters of each cluster to obtain the predicted target information of each point; The reconstruction module is used to obtain a reconstructed point cloud according to the predicted target information of each point of the down-sampled point cloud.
10. An electronic device, characterized in that: The electronic device includes a memory and a processor, the memory stores a computer program, and the processor implements the three-dimensional point cloud encoding method according to any one of claims 1 to 6 or the three-dimensional point cloud decoding method according to claim 7 when executing the computer program.
Citation Information
Patent Citations
Point cloud data reconstruction method and device, equipment and storage medium
CN118429548A