Point cloud encoding processing method, point cloud decoding processing method and related equipment
By determining the target order in the point cloud coding and using the index of the Columbus encoding algorithm, the point cloud attribute information is coded, the problem of low coding efficiency in the existing technology is solved, and the more efficient information redundancy is achieved.
Patent Information
- Application Number
- CN202111467925.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-12-03
- Publication Date
- 2025-01-28
- Estimated Expiration
- 2041-12-03
AI Technical Summary
When the prior art encodes point cloud attribute information, the effect of removing redundancy between information is poor, resulting in low encoding efficiency.
By determining the distribution characteristic value, adapting the target level of the attribute information to be used to be used to coded the attribute information, and the target level indexes of the index of Columbus coded algorithms for entropy coding to obtain the attribute code flow.
Improve the redundant effect of removing information between information, thereby improving coding efficiency.
Smart Images

Figure CN116233389B_ABST
Abstract
Description
Technical Field
[0001] The present application belongs to the field of computer technology, and specifically relates to a point cloud encoding processing method, a point cloud decoding processing method and related equipment. Background Art
[0002] Point cloud is a representation of a three-dimensional object or scene. It is composed of a set of discrete points that are irregularly distributed in space and express the spatial structure and surface properties of the three-dimensional object or scene. In order to accurately reflect the information in space, the number of discrete points required is quite large. In order to reduce the bandwidth occupied by point cloud data storage and transmission, the point cloud data needs to be encoded and compressed. Point cloud data usually consists of geometric information describing the location, such as three-dimensional coordinates (x, y, z), and attribute information of the location, such as color (R, G, B) or reflectivity. In the process of point cloud coding and compression, the encoding of geometric information and attribute information is performed separately.
[0003] At present, the process of encoding the attribute information of point clouds has a poor effect in removing redundancy between information, resulting in low coding efficiency. Summary of the invention
[0004] The embodiments of the present application provide a point cloud encoding processing method, a point cloud decoding processing method and related equipment, which can solve the problem of low encoding efficiency.
[0005] In a first aspect, a point cloud coding processing method is provided, the method comprising:
[0006] Determining a distribution characteristic value, wherein the distribution characteristic value is used to represent distribution characteristic information of the attribute information to be encoded;
[0007] Determine a target order corresponding to the attribute information to be encoded based on the distribution characteristic value, the target order being the order of exponential Golomb coding;
[0008] The attribute information to be encoded is entropy encoded based on an exponential Golomb coding algorithm of the target order to obtain an attribute code stream.
[0009] In a second aspect, a point cloud decoding processing method is provided, the method comprising:
[0010] Determine a target order corresponding to the attribute code stream to be decoded, wherein the target order is the order of Exponential Golomb decoding;
[0011] The attribute code stream to be decoded is entropy decoded based on an exponential Golomb decoding algorithm of the target order.
[0012] In a third aspect, a point cloud coding processing device is provided, comprising:
[0013] A first determining module, used to determine a distribution characteristic value, where the distribution characteristic value is used to represent distribution characteristic information of the attribute information to be encoded;
[0014] A second determination module is used to determine a target order corresponding to the attribute information to be encoded based on the distribution characteristic value, wherein the target order is an order of exponential Golomb coding;
[0015] The encoding module is used to perform entropy encoding on the attribute information to be encoded based on the exponential Golomb coding algorithm of the target order to obtain an attribute code stream.
[0016] In a fourth aspect, a point cloud decoding processing device is provided, comprising:
[0017] A determination module, used to determine a target order corresponding to a to-be-decoded attribute code stream, wherein the target order is an order of exponential Golomb decoding;
[0018] A decoding module is used to perform entropy decoding on the attribute code stream to be decoded based on an exponential Golomb decoding algorithm of the target order.
[0019] In a fifth aspect, an embodiment of the present application provides an electronic device, comprising a processor and a memory, wherein the memory stores programs or instructions that can be run on the processor, and when the program or instructions are executed by the processor, the steps of the method described in the first aspect are implemented, or when the program or instructions are executed by the processor, the steps of the method described in the second aspect are implemented.
[0020] In a sixth aspect, an embodiment of the present application provides a readable storage medium, on which a program or instruction is stored, and when the program or instruction is executed by a processor, the steps of the method described in the first aspect are implemented, or when the program or instruction is executed by a processor, the steps of the method described in the second aspect are implemented.
[0021] In the seventh aspect, an embodiment of the present application provides a chip, which includes a processor and a communication interface, wherein the communication interface is coupled to the processor, and the processor is used to run a program or instruction to implement the method described in the first aspect or the second aspect.
[0022] In an eighth aspect, an embodiment of the present application provides a computer program product, which is stored in a storage medium and is executed by at least one processor to implement the method described in the first aspect or the second aspect.
[0023] In the embodiment of the present application, a distribution characteristic value is determined, and the distribution characteristic value is used to represent the distribution characteristic information of the attribute information to be encoded; based on the distribution characteristic value, a target order corresponding to the attribute information to be encoded is determined, and the target order is the order of the exponential Golomb coding; the attribute information to be encoded is entropy encoded based on the exponential Golomb coding algorithm of the target order to obtain an attribute code stream. In this way, in the process of encoding the attribute information of the point cloud, the target order can be adaptively determined based on the distribution characteristic information of the attribute information to be encoded, and the exponential Golomb coding algorithm of the target order is used to entropy encode the attribute information to be encoded, which can improve the effect of removing redundancy between information, thereby improving the coding efficiency. BRIEF DESCRIPTION OF THE DRAWINGS
[0024] Figure 1 This is one of the schematic diagrams of the point cloud AVS encoder framework;
[0025] Figure 2 This is one of the schematic diagrams of the point cloud AVS decoder framework;
[0026] Figure 3 It is a flow chart of a point cloud coding processing method provided in an embodiment of the present application;
[0027] Figure 4 is a flow chart of a point cloud decoding processing method provided in an embodiment of the present application;
[0028] Figure 5 It is a structural diagram of a point cloud coding processing device provided in an embodiment of the present application;
[0029] Figure 6 is a structural diagram of a point cloud decoding processing device provided in an embodiment of the present application;
[0030] Figure 7 It is one of the structural diagrams of an electronic device provided in an embodiment of the present application;
[0031] Figure 8 This is the second structural diagram of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0032] The following will be combined with the drawings in the embodiments of the present application to clearly describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field belong to the scope of protection of this application.
[0033] The terms "first", "second", etc. in the specification and claims of the present application are used to distinguish similar objects, and are not used to describe a specific order or sequence. It should be understood that the terms used in this way are interchangeable under appropriate circumstances, so that the embodiments of the present application can be implemented in an order other than those illustrated or described here, and the objects distinguished by "first" and "second" are generally of the same type, and the number of objects is not limited. For example, the first object can be one or more. In addition, "and / or" in the specification and claims represents at least one of the connected objects, and the character " / " generally represents that the objects associated with each other are in an "or" relationship.
[0034] The encoding and decoding end corresponding to the encoding and decoding method in the embodiment of the present application may be a terminal, which may also be referred to as a terminal device or a user terminal (User Equipment, UE). The terminal may be a mobile phone, a tablet computer (Tablet Personal Computer), a laptop computer (Laptop Computer) or a notebook computer, a personal digital assistant (Personal Digital Assistant, PDA), a handheld computer, a netbook, an ultra-mobile personal computer (ultra-mobile personal computer, UMPC), a mobile Internet device (Mobile Internet Device, MID), an augmented reality (augmented reality, AR) / virtual reality (virtual reality, VR) device, a robot, a wearable device (Wearable Device) or a vehicle-mounted device (VUE), a pedestrian terminal (PUE) and other terminal-side devices, and the wearable device includes: a smart watch, a bracelet, a headset, glasses, etc. It should be noted that the specific type of the terminal is not limited in the embodiment of the present application.
[0035] For ease of understanding, some contents involved in the embodiments of the present application are described below:
[0036] like Figure 1As shown in the figure, in the point cloud digital audio and video coding standard (AVS) encoder framework, the geometric information and attribute information of the point cloud are encoded separately. First, the geometric information is transformed so that all the point clouds are contained in a bounding box, and then the coordinates are quantized. Quantization mainly plays a role in scaling. Since quantization will round the geometric coordinates, the geometric information of some points will be the same, which is called duplicate points. Whether to remove duplicate points is determined based on parameters. The two steps of quantization and removal of duplicate points are also called voxelization. Next, the bounding box is divided into a multi-tree, such as an octree, a quadtree or a binary tree. In the multi-tree-based geometric information encoding framework, the bounding box is divided into 8 equal sub-cubes, and the non-empty sub-cubes are divided until the division is a unit cube with a leaf node of 1x1x1, and the division is stopped. The number of points in the leaf node is encoded to generate a binary code stream.
[0037] After the geometric encoding is completed, the geometric information is reconstructed for the subsequent recoloring. Attribute encoding is mainly for color and reflectance information. First, it is determined whether to perform color space conversion based on the parameters. If color space conversion is performed, the color information is converted from the red green blue (RGB) color space to the brightness color (YUV) color space. Then, the original point cloud is used to recolor the geometrically reconstructed point cloud so that the unencoded attribute information corresponds to the reconstructed geometric information. In color information encoding, after sorting the point cloud by the Morton code, the geometric spatial relationship is used to search for the nearest neighbor of the point to be predicted, and the reconstructed attribute value of the neighbor is used to predict the point to be predicted to obtain the predicted attribute value, and then the real attribute value and the predicted attribute value are differentiated to obtain the prediction residual, and finally the prediction residual is quantized and encoded to generate a binary code stream.
[0038] In attribute information encoding, it is divided into three branches: attribute prediction, attribute prediction transformation and attribute transformation.
[0039] (1) The attribute prediction process is as follows: first, the point cloud is reordered, and then differential prediction is performed. In the current AVS coding framework, Hilbert code is used to reorder the point cloud. Then, the attribute prediction is performed on the sorted point cloud. If the geometric information of the current point to be coded is the same as that of the previous coded point, that is, it is a duplicate point, then the reconstructed attribute value of the duplicate point is used as the attribute prediction value of the current point to be coded. Otherwise, the first m points of the Hilbert order of the current point to be coded are selected as neighbor candidate points, and then the Manhattan distance of their geometric information with the current point to be coded is calculated respectively. The n points closest to the current point to be coded are determined as neighbors of the current point to be coded. The inverse of the distance is used as the weight to calculate the weighted average of the attributes of all neighbors as the attribute prediction value of the current point to be coded. The prediction residual is calculated through the attribute prediction value and the attribute value of the current point to be coded. Finally, the prediction residual is quantized and entropy encoded to generate a binary code stream.
[0040] (2) The attribute prediction transformation process is as follows: first, the point cloud sequence is grouped according to the spatial density of the point cloud, and then the point cloud attribute information is predicted. The obtained prediction residual is transformed, and the obtained transformation coefficient is quantized; finally, the quantized transformation coefficient and prediction residual are entropy coded to generate a binary code stream.
[0041] (3) The attribute transformation process is as follows: first, wavelet transform is performed on the point cloud attributes and the transform coefficients are quantized; secondly, the attribute reconstruction value is obtained through inverse quantization and inverse wavelet transform; then the difference between the original attribute and the attribute reconstruction value is calculated to obtain the prediction residual and quantize it; finally, the quantized transform coefficients and prediction residual are entropy encoded to generate a binary code stream.
[0042] Optionally, the AVS decoding process corresponds to the encoding process. Specifically, the AVS decoder framework is as follows: Figure 2 shown.
[0043] Optionally, the point cloud encoding processing method provided in the embodiment of the present application involves the attribute information encoding part in the AVS encoder framework, and the point cloud decoding processing method involves the attribute information decoding part in the AVS decoder framework.
[0044] Optionally, the point cloud encoding processing method provided in the embodiment of the present application involves entropy encoding in the attribute information encoding part, and the point cloud decoding processing method involves entropy decoding in the attribute information decoding part.
[0045] The point cloud encoding processing method and the point cloud decoding processing method provided in the embodiments of the present application are described in detail below through some embodiments and their application scenarios in combination with the accompanying drawings.
[0046] See also Figure 3 , Figure 3 is a flow chart of a point cloud coding processing method provided in an embodiment of the present application, such as Figure 3 As shown, the point cloud coding processing method includes the following steps:
[0047] Step 101: Determine a distribution characteristic value, where the distribution characteristic value is used to represent distribution characteristic information of attribute information to be encoded.
[0048] Among them, the point cloud coding processing method can be used at the coding end. The distribution characteristic information of the attribute information to be encoded can characterize the attribute distribution of the point cloud. The attribute information to be encoded can be the attribute information of the point cloud sequence; or it can be the attribute information of a subset of the point cloud sequence; or it can be the attribute information of a subset further divided from a subset of the point cloud sequence, and so on, which is not limited in this embodiment. A subset of the point cloud sequence can be a slice of the point cloud sequence. For example, taking the attribute information to be encoded as the attribute information of the point cloud sequence as an example, the attribute information to be encoded can be the attribute information of the current point cloud sequence.
[0049] In addition, the distribution characteristic value may be related to the maximum value of the attribute information to be encoded; or the distribution characteristic value may be related to the minimum value of the attribute information to be encoded; or the distribution characteristic value may be related to the difference between the maximum and minimum values of the attribute information to be encoded; or the distribution characteristic value may be related to the average value of the absolute value of the attribute information to be encoded; and so on. This embodiment does not limit this.
[0050] Taking the attribute information to be encoded as the attribute information of the current point cloud sequence as an example, the current point cloud sequence can be traversed to record the maximum and minimum values of the attribute information in the current point cloud sequence. The distribution range of the attribute information of the current point cloud sequence can be represented according to the maximum and minimum values of the attribute information. For example, the distribution characteristic value can be the difference between the maximum and minimum values of the attribute information in the current point cloud sequence; or the current point cloud sequence can be traversed to calculate the average value of the attribute information in the current point cloud sequence. The distribution characteristic value can be the average value of the absolute values of the attribute information in the current point cloud sequence.
[0051] In one implementation, the distribution characteristic value disAttr may be the maximum value Attr of the attribute information in the current point cloud sequence. max The difference between the minimum value of the attribute information in the current point cloud sequence and Attr min :
[0052] disAttr=Attr max -Attr min .
[0053] In addition, the distribution characteristic value may be determined based on the attribute information to be encoded, or may be determined based on the target information corresponding to the attribute information to be encoded, wherein the target information includes at least one of a prediction residual and a transform coefficient. Taking the case where the distribution characteristic value is determined based on the target information corresponding to the attribute information to be encoded as an example, the distribution characteristic value may be the difference between the maximum value and the minimum value of the target information corresponding to the attribute information to be encoded; or the distribution characteristic value may be the average value of the absolute value of the target information corresponding to the attribute information to be encoded.
[0054] It should be noted that the attribute information to be encoded may be color attribute information, or may be reflectivity attribute information, or may be other types of attribute information. The embodiment of the present application does not limit the attribute type of the attribute information to be encoded.
[0055] Step 102: Determine a target order corresponding to the attribute information to be encoded based on the distribution characteristic value, wherein the target order is the order of exponential Golomb coding.
[0056] Among them, the target order may be positively correlated with the distribution characteristic value. In one implementation, the target order corresponding to the attribute information to be encoded may be determined based on the ratio of the distribution characteristic value to the attribute quantization step length. The target order corresponding to the attribute information to be encoded may be positively correlated with the ratio of the distribution characteristic value to the attribute quantization step length. The larger the ratio of the distribution characteristic value to the attribute quantization step length, the larger the target order corresponding to the attribute information to be encoded. The ratio of the distribution characteristic value to the attribute quantization step length disAttr′ is:
[0057]
[0058] Wherein, disAttr is the distribution characteristic value, AttrQuantStep is the attribute quantization step length. The ratio of the distribution characteristic value to the attribute quantization step length can represent the distribution characteristic information of the attribute information to be encoded at the current bit rate point.
[0059] In one implementation, the target index value can be calculated according to the ratio of the distribution characteristic value to the attribute quantization step length, and the exponential Golomb coding order corresponding to the target index value is searched in a stored lookup table according to the target index value, and the exponential Golomb coding order corresponding to the target index value is determined as the target order. The lookup table is a lookup table pre-set according to the coding characteristics of the exponential Golomb coding, and the lookup table stores the corresponding relationship between the index value and the exponential Golomb coding order.
[0060] In addition, the index value Index may be positively correlated with the ratio disAttr′ of the distribution characteristic value to the attribute quantization step.
[0061] In one implementation, the target index value Index may be:
[0062] Index=log2disAttr′.
[0063] Step 103: Perform entropy coding on the attribute information to be encoded based on the exponential Golomb coding algorithm of the target order to obtain an attribute code stream.
[0064] Among them, target information corresponding to the attribute information to be encoded can be obtained, the target information includes at least one of a prediction residual and a transform coefficient, and the target information is entropy encoded using an exponential Golomb coding algorithm of the target order. For example, attribute prediction can be performed on the attribute information to be encoded to obtain a prediction residual, and the prediction residual is entropy encoded using an exponential Golomb coding algorithm of the target order.
[0065] It should be noted that in the AVS-PCC attribute entropy coding process, it is necessary to use K-order exponential Golomb coding to entropy code the prediction residual. In the related art, different K values are directly assigned for entropy coding for different attribute types. For example, when the attribute information is color, the prediction residual is entropy coded using 1-order exponential Golomb coding; when the attribute information is reflectivity, the prediction residual is entropy coded using 3-order exponential Golomb coding. However, due to different point cloud sequences at different bit rates, the distribution range of the attribute residual is also different. The embodiment of the present application determines the target order corresponding to the attribute information to be encoded based on the distribution characteristic information of the attribute information to be encoded, and proposes an adaptive exponential Golomb coding method. Compared with using the same K-order exponential Golomb coding for the same attribute type at all bit rates, the embodiment of the present application can efficiently remove the redundancy between information; and can make full use of the distribution of attribute information of different attribute types at different bit rates, which can further improve the coding efficiency.
[0066] In the embodiment of the present application, a distribution characteristic value is determined, and the distribution characteristic value is used to represent the distribution characteristic information of the attribute information to be encoded; based on the distribution characteristic value, a target order corresponding to the attribute information to be encoded is determined, and the target order is the order of the exponential Golomb coding; the attribute information to be encoded is entropy encoded based on the exponential Golomb coding algorithm of the target order to obtain an attribute code stream. In this way, in the process of encoding the attribute information of the point cloud, the target order can be adaptively determined based on the distribution characteristic information of the attribute information to be encoded, and the exponential Golomb coding algorithm of the target order is used to entropy encode the attribute information to be encoded, which can improve the effect of removing redundancy between information, thereby improving the coding efficiency.
[0067] Optionally, the attribute code stream carries indication information of the target order.
[0068] Among them, the indication information can be used to indicate the target order. Taking the target order as K order as an example, the indication information of the target order can be K, or can be K degree, or can be Degree K, etc. This embodiment does not limit the specific form of the indication information of the target order.
[0069] It should be noted that the target order indicated by the indication information carried in the attribute code stream is the order of Exponential Golomb decoding when used for decoding.
[0070] In this implementation, the attribute code stream carries the indication information of the target order, so that the decoding end can obtain the target order through the indication information of the target order carried in the attribute code stream, and perform entropy decoding using the exponential Golomb decoding algorithm of the target order.
[0071] Optionally, the attribute code stream carries an attribute information parameter set, where the attribute information parameter set includes the indication information and an attribute type corresponding to the indication information, where the attribute type is a type of the attribute information to be encoded.
[0072] The encoding end may write the indication information of the target order into the attribute information parameter set APS.
[0073] In one implementation, the parameter GolombNumber[num_attr_type] is introduced in the attribute information parameter set APS to store the order of the exponential Golomb coding selected for different types of attributes. Among them, num_attr_type is the total number of attribute types of the point cloud to be encoded, and the value of GolombNumber[attrIdx] indicates the order of the exponential Golomb coding of the attrIdx-th attribute, attrIdx=0, 1,..., num_attr_type-1. GolombNumber[attrIdx] takes an integer greater than or equal to 0, and attrIdx is used to identify different attribute types. For example, the current AVS point cloud data set mainly contains two types of attributes: color and reflectivity. The correspondence between attrIdx and attribute type in the embodiment of the present application can be as shown in Table 1:
[0074] Table 1. Correspondence between attrIdx and attribute type
[0075] attrIdx Property Type 0 color 1 Reflectivity
[0076] It should be noted that the decoding end can parse the attribute code stream to be decoded to obtain the exponential Golomb order K, that is, the target order, and then decode the attribute code stream to be decoded according to the order K. In one implementation, the decoding end obtains the value of the syntax element GolombNumber[attrIdx] from the input code stream; and obtains the exponential Golomb order K corresponding to the attribute type according to the value of GolombNumber[attrIdx]. Among them, the exponential Golomb order is the exponential Golomb coding order.
[0077] For color attributes (i.e., when attrIdx is 0), the exponential Golomb order K is equal to the value of kth_GolombNumber[0]. When decoding attribute information, the K-order exponential Golomb decoding algorithm is used to decode the attribute code stream corresponding to the color information.
[0078] For the reflectivity attribute (ie, when attrIdx is 1), the exponential Golomb order K is equal to the value of kth_GolombNumber[1]. When decoding the attribute information, the K-order exponential Golomb decoding algorithm is used to decode the attribute code stream corresponding to the reflectivity.
[0079] In this implementation, the attribute code stream carries an attribute information parameter set, and the attribute information parameter set includes the indication information and the attribute type corresponding to the indication information, so that the decoding end can obtain the correspondence between the target order and the attribute type through the attribute information parameter set, so that the target order can be determined according to the attribute type of the attribute information to be decoded, and the exponential Golomb decoding algorithm of the target order is used for entropy decoding.
[0080] Optionally, the target order is positively correlated with the distribution characteristic value.
[0081] Among them, taking the distribution characteristic value as the difference between the maximum value of the attribute information to be encoded and the minimum value of the attribute information to be encoded as an example, the larger the distribution characteristic value, the larger the distribution range of the attribute information to be encoded, and the target order is positively correlated with the distribution characteristic value. Therefore, a larger exponential Golomb coding order is used for the attribute information to be encoded with a larger distribution range, so as to effectively remove the redundancy between information and improve the coding efficiency.
[0082] In one implementation, the target order is proportional to the distribution characteristic value.
[0083] Optionally, the determining, based on the distribution characteristic value, a target order corresponding to the attribute information to be encoded includes:
[0084] Based on the rounded value of the ratio of the distribution characteristic value to the attribute quantization step length, a target order corresponding to the attribute information to be encoded is determined.
[0085] The attribute quantization step may be a current attribute quantization step, that is, a currently encoded attribute quantization step. The target order corresponding to the attribute information to be encoded may be positively correlated with a rounded value of the ratio of the distribution characteristic value to the attribute quantization step. For example, the target order corresponding to the attribute information to be encoded may be proportional to a rounded value of the ratio of the distribution characteristic value to the attribute quantization step.
[0086] In one implementation, the correspondence between the index value and the exponential Golomb coding order can be stored in a lookup table, the rounded value of the ratio of the distribution characteristic value to the attribute quantization step is used as the target index value, and the exponential Golomb coding order corresponding to the target index value is searched in the lookup table as the target order.
[0087] In this implementation, the target order corresponding to the attribute information to be encoded is determined based on the rounded value of the ratio of the distribution characteristic value to the attribute quantization step size. During the attribute entropy coding process, the order of the exponential Golomb coding is adaptively selected according to the distribution of the attribute information of different attribute types at different bit rates. Using a more matching K-order exponential Golomb algorithm for entropy coding can more effectively reduce the redundancy between information and further improve the coding efficiency.
[0088] Optionally, the determining the target order corresponding to the attribute information to be encoded based on a rounded value of the ratio of the distribution characteristic value to the attribute quantization step size includes:
[0089] Determining a target index value based on a rounded value of a ratio of the distribution characteristic value to the attribute quantization step length;
[0090] The target order corresponding to the attribute information to be encoded is determined based on the stored correspondence between the exponential Golomb coding order and the index value, and the target order corresponds to the target index value.
[0091] The exponential Golomb coding order is the order of the exponential Golomb coding. The corresponding relationship between the exponential Golomb coding order and the index value can be stored in a lookup table, so that the exponential Golomb coding order corresponding to the target index value can be found in the stored lookup table, and the exponential Golomb coding order corresponding to the target index value is determined as the target order. The lookup table can be a lookup table pre-set according to the coding characteristics of the exponential Golomb coding.
[0092] In addition, the target index value may be positively correlated with the rounded value of the ratio of the distribution characteristic value to the attribute quantization step length.
[0093] In one implementation, the target index value may be: log2[disAttr′], wherein [] is a rounding symbol, and [disAttr′] is a rounding value of the ratio of the distribution characteristic value to the attribute quantization step.
[0094] In one implementation, the target index value may be: [log2[disAttr′]].
[0095] In this implementation, the target index value is determined based on the rounded value of the ratio of the distribution characteristic value to the attribute quantization step length; the target order corresponding to the attribute information to be encoded is determined based on the stored corresponding relationship between the exponential Golomb coding order and the index value, and the target order corresponds to the target index value. In this way, the target order can be quickly determined based on the stored corresponding relationship between the exponential Golomb coding order and the index value, further improving the encoding efficiency.
[0096] Optionally, the exponential Golomb coding algorithm based on the target order performs entropy coding on the attribute information to be encoded, including:
[0097] Acquire target information corresponding to the attribute information to be encoded, the target information including at least one of a prediction residual and a transform coefficient;
[0098] The target information is entropy encoded using an exponential Golomb coding algorithm of the target order.
[0099] Among them, the attribute information to be encoded can be predicted to obtain a prediction residual, and the prediction residual can be entropy encoded using the exponential Golomb coding algorithm of the target order; or, the attribute prediction transformation can be performed on the attribute information to be encoded to obtain a prediction residual and a transformation coefficient, and the prediction residual and the transformation coefficient can be entropy encoded using the exponential Golomb coding algorithm of the target order; or, the attribute transformation can be performed on the attribute information to be encoded to obtain a prediction residual and a transformation coefficient, and the prediction residual and the transformation coefficient can be entropy encoded using the exponential Golomb coding algorithm of the target order; and so on, which are not limited in this embodiment.
[0100] In this implementation, target information corresponding to the attribute information to be encoded is obtained, and the target information includes at least one of a prediction residual and a transform coefficient; and the target information is entropy encoded using an exponential Golomb coding algorithm of the target order. In this way, when entropy encoding is performed on the prediction residual or the transform coefficient, the effect of removing redundancy between information can be improved, thereby improving the encoding efficiency.
[0101] Optionally, the distribution characteristic value is determined based on at least one of the following:
[0102] The maximum value of the attribute information to be encoded;
[0103] The minimum value of the attribute information to be encoded;
[0104] The difference between the maximum value and the minimum value of the attribute information to be encoded;
[0105] The average value of the absolute values of the attribute information to be encoded.
[0106] In this implementation, any one of the maximum value of the attribute information to be encoded, the minimum value of the attribute information to be encoded, the difference between the maximum value and the minimum value of the attribute information to be encoded, and the average value of the absolute value of the attribute information to be encoded can better reflect the distribution status of the attribute information to be encoded, so that the target order can be adaptively determined using the distribution status of the attribute information to be encoded, and the exponential Golomb coding algorithm of the target order is used to perform entropy coding on the attribute information to be encoded, which can improve the effect of removing redundancy between information, thereby improving coding efficiency.
[0107] As shown in Tables 2 to 5, under various test conditions, the point cloud coding processing method of the embodiment of the present application is used for point cloud coding, which has higher compression efficiency than PCRMV5.0 and can improve coding performance. Among them, AVSC1_ai in Table 2 represents the test under geometric lossy and attribute lossy coding mode; AVSC2_ai in Table 3 represents the test under geometric lossless and attribute lossy coding mode; AVSC3_ai in Table 4 represents the test under geometric lossless and attribute limited lossy coding mode; AVSC4_ai in Table 5 represents the test under geometric lossless and attribute lossless coding mode. average represents the average performance gain of all test sequences under this condition. Overall average represents the average performance gain of all test sequences. AVSCat1A is a test sequence whose attribute information is reflectivity information; AVSCat1B is a test sequence whose attribute information is color information; AVSCat1C is a test sequence whose attribute information includes reflectivity information and color information; AVSCat2 is a test sequence whose attribute information is reflectivity information and is a multi-frame sequence; AVSCat3 is a test sequence whose attribute information is color information and is a multi-frame sequence; AVSCat1A+AVSCat2 average is the average performance gain of the two test sequences. In Tables 2 to 4, Luma, Chroma Cb and Chroma Cr represent three channels, and Reflectance represents reflectivity. In Table 5, Total represents the change in total bitrate, Colour represents color, and Geometry represents geometric information. "-" in Tables 2 to 5 means that there is no data for this item.
[0108] It should be noted that BD-AttrReate is a parameter used to measure the performance of attribute information encoding. When BD-AttrReate is negative, it means that the performance has improved. On this basis, the larger the absolute value of BD-AttrReate, the greater the performance gain. Bpip (bits per input point) is the average number of bits per input point after compression is completed. The fewer bits represent higher compression efficiency. The bpip ratio is the ratio of the bpip of the test method and the reference method, in the form of a percentage. Under lossless conditions, if the bpip ratio is less than 100%, it means that the performance of the test method is better. It can be seen from the data in Tables 2 to 5 that the encoding performance of the point cloud coding processing method using the embodiment of the present application is better than the reference method in attribute information encoding performance.
[0109] Table 2. Test results under AVSC1_ai conditions
[0110]
[0111] Table 3. Test results under AVSC2_ai conditions
[0112]
[0113]
[0114] Table 4. Test results under AVSC3_ai conditions
[0115]
[0116] Table 5. Test results under AVSC4_ai conditions
[0117]
[0118] See also Figure 4 , Figure 4 is a flowchart of a point cloud decoding processing method provided in an embodiment of the present application, such as Figure 4 As shown, the point cloud decoding processing method includes the following steps:
[0119] Step 201, determining a target order corresponding to a to-be-decoded attribute code stream, wherein the target order is an order of exponential Golomb decoding;
[0120] Step 202: Perform entropy decoding on the attribute code stream to be decoded based on the exponential Golomb decoding algorithm of the target order.
[0121] Optionally, the attribute code stream to be decoded carries indication information for indicating the target order.
[0122] Optionally, the attribute code stream to be decoded carries an attribute information parameter set, the attribute information parameter set includes the indication information and an attribute type corresponding to the indication information, and the attribute type is a type of attribute information corresponding to the attribute code stream to be decoded.
[0123] It should be noted that this embodiment is Figure 3 The corresponding decoding side implementation in the embodiment shown in the figure can be found in the specific implementation. Figure 3 In order to avoid repeated description, the relevant description of the embodiment shown will not be repeated in this embodiment, and the same beneficial effects can still be achieved.
[0124] The point cloud coding processing method provided in the embodiment of the present application can be executed by a point cloud coding processing device. In the embodiment of the present application, a method for executing point cloud coding processing by a point cloud coding processing device is taken as an example to illustrate the point cloud coding processing device provided in the embodiment of the present application.
[0125] See also Figure 5 , Figure 5 is a structural diagram of a point cloud coding processing device provided in an embodiment of the present application, such as Figure 5 As shown, the point cloud coding processing device 300 includes:
[0126] A first determining module 301 is used to determine a distribution characteristic value, where the distribution characteristic value is used to represent distribution characteristic information of attribute information to be encoded;
[0127] A second determination module 302 is used to determine a target order corresponding to the attribute information to be encoded based on the distribution characteristic value, wherein the target order is an order of exponential Golomb coding;
[0128] The encoding module 303 is used to perform entropy encoding on the attribute information to be encoded based on the exponential Golomb coding algorithm of the target order to obtain an attribute code stream.
[0129] Optionally, the attribute code stream carries indication information of the target order.
[0130] Optionally, the attribute code stream carries an attribute information parameter set, where the attribute information parameter set includes the indication information and an attribute type corresponding to the indication information, where the attribute type is a type of the attribute information to be encoded.
[0131] Optionally, the target order is positively correlated with the distribution characteristic value.
[0132] Optionally, the second determining module 302 is specifically configured to:
[0133] Based on the rounded value of the ratio of the distribution characteristic value to the attribute quantization step length, a target order corresponding to the attribute information to be encoded is determined.
[0134] Optionally, the second determining module 302 is specifically configured to:
[0135] Determining a target index value based on a rounded value of a ratio of the distribution characteristic value to the attribute quantization step length;
[0136] The target order corresponding to the attribute information to be encoded is determined based on the stored correspondence between the exponential Golomb coding order and the index value, and the target order corresponds to the target index value.
[0137] Optionally, the encoding module 303 is specifically used for:
[0138] Acquire target information corresponding to the attribute information to be encoded, the target information including at least one of a prediction residual and a transform coefficient;
[0139] The target information is entropy encoded using an exponential Golomb coding algorithm of the target order to obtain an attribute code stream.
[0140] Optionally, the distribution characteristic value is determined based on at least one of the following:
[0141] The maximum value of the attribute information to be encoded;
[0142] The minimum value of the attribute information to be encoded;
[0143] The difference between the maximum value and the minimum value of the attribute information to be encoded;
[0144] The average value of the absolute values of the attribute information to be encoded.
[0145] In the embodiment of the present application, the first determination module determines the distribution characteristic value, and the distribution characteristic value is used to represent the distribution characteristic information of the attribute information to be encoded; the second determination module determines the target order corresponding to the attribute information to be encoded based on the distribution characteristic value, and the target order is the order of the exponential Golomb coding; the encoding module performs entropy encoding on the attribute information to be encoded based on the exponential Golomb coding algorithm of the target order to obtain an attribute code stream. In this way, in the process of encoding the attribute information of the point cloud, the target order can be adaptively determined based on the distribution characteristic information of the attribute information to be encoded, and the exponential Golomb coding algorithm of the target order is used to entropy encode the attribute information to be encoded, which can improve the effect of removing redundancy between information, thereby improving the encoding efficiency.
[0146] The point cloud coding processing device in the embodiment of the present application can be an electronic device or a component in an electronic device, such as an integrated circuit or a chip. The electronic device can be a terminal or other devices other than a terminal. Exemplarily, the electronic device can be a mobile phone, a tablet computer, a laptop computer, a PDA, a vehicle-mounted electronic device, a mobile Internet device (Mobile Internet Device, MID), an augmented reality (augmented reality, AR) / virtual reality (virtual reality, VR) device, a robot, a wearable device, an ultra-mobile personal computer (ultra-mobile personal computer, UMPC), a netbook or a personal digital assistant (personal digital assistant, PDA), etc. It can also be a server, a network attached storage (Network Attached Storage, NAS), a personal computer (personal computer, PC), a television (television, TV), a teller machine or a self-service machine, etc., which is not specifically limited in the embodiment of the present application.
[0147] The point cloud coding processing device in the embodiment of the present application may be a device having an operating system. The operating system may be an Android operating system, an iOS operating system, or other possible operating systems, which are not specifically limited in the embodiment of the present application.
[0148] The point cloud coding processing device provided in the embodiment of the present application can achieve Figure 3 To avoid repetition, the various processes implemented by the method embodiment are not described here.
[0149] The point cloud decoding processing method provided in the embodiment of the present application can be executed by a point cloud decoding processing device. In the embodiment of the present application, a method for executing point cloud decoding processing by a point cloud decoding processing device is taken as an example to illustrate the point cloud decoding processing device provided in the embodiment of the present application.
[0150] See also Figure 6 , Figure 6 is a structural diagram of a point cloud decoding processing device provided in an embodiment of the present application, such as Figure 6 As shown, the point cloud decoding processing device 400 includes:
[0151] A determination module 401 is used to determine a target order corresponding to a to-be-decoded attribute code stream, wherein the target order is an order of Exponential Golomb decoding;
[0152] The decoding module 402 is configured to perform entropy decoding on the attribute code stream to be decoded based on an Exponential Golomb decoding algorithm of the target order.
[0153] Optionally, the attribute code stream to be decoded carries indication information for indicating the target order.
[0154] Optionally, the attribute code stream to be decoded carries an attribute information parameter set, the attribute information parameter set includes the indication information and an attribute type corresponding to the indication information, and the attribute type is a type of attribute information corresponding to the attribute code stream to be decoded.
[0155] The point cloud decoding processing device in the embodiment of the present application can be an electronic device or a component in the electronic device, such as an integrated circuit or a chip. The electronic device can be a terminal or other devices other than a terminal. Exemplarily, the electronic device can be a mobile phone, a tablet computer, a laptop computer, a PDA, a vehicle-mounted electronic device, a mobile Internet device (Mobile Internet Device, MID), an augmented reality (augmented reality, AR) / virtual reality (virtual reality, VR) device, a robot, a wearable device, an ultra-mobile personal computer (ultra-mobile personal computer, UMPC), a netbook or a personal digital assistant (personal digital assistant, PDA), etc. It can also be a server, a network attached storage (Network Attached Storage, NAS), a personal computer (personal computer, PC), a television (television, TV), a teller machine or a self-service machine, etc., which is not specifically limited in the embodiment of the present application.
[0156] The point cloud decoding processing device in the embodiment of the present application may be a device having an operating system. The operating system may be an Android operating system, an iOS operating system, or other possible operating systems, which are not specifically limited in the embodiment of the present application.
[0157] The point cloud decoding processing device provided in the embodiment of the present application can achieve Figure 4 To avoid repetition, the various processes implemented by the method embodiment are not described here.
[0158] Alternatively, if Figure 7As shown, an embodiment of the present application further provides an electronic device 500, including a processor 501 and a memory 502, wherein the memory 502 stores a program or instruction that can be executed on the processor 501, and when the program or instruction is executed by the processor 501, the various steps of the above-mentioned point cloud encoding processing method embodiment are implemented, or, when the program or instruction is executed by the processor 501, the various steps of the above-mentioned point cloud decoding processing method embodiment are implemented, and the same technical effect can be achieved. To avoid repetition, it will not be repeated here.
[0159] It should be noted that the electronic devices in the embodiments of the present application include the mobile electronic devices and non-mobile electronic devices mentioned above.
[0160] Figure 8 A schematic diagram of the hardware structure of an electronic device to implement an embodiment of the present application.
[0161] The electronic device 600 includes but is not limited to: a radio frequency unit 601, a network module 602, an audio output unit 603, an input unit 604, a sensor 605, a display unit 606, a user input unit 607, an interface unit 608, a memory 609, and a processor 610.
[0162] Those skilled in the art will appreciate that the electronic device 600 may also include a power source (such as a battery) for supplying power to each component, and the power source may be logically connected to the processor 610 through a power management system, thereby implementing functions such as managing charging, discharging, and power consumption management through the power management system. Figure 8 The electronic device structure shown in the figure does not constitute a limitation on the electronic device. The electronic device may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently, which will not be described in detail here.
[0163] In one embodiment, the electronic device is used to perform a point cloud coding processing method, wherein:
[0164] Processor 610, configured to determine a distribution characteristic value, where the distribution characteristic value is used to represent distribution characteristic information of the attribute information to be encoded;
[0165] The processor 610 is further configured to determine a target order corresponding to the attribute information to be encoded based on the distribution characteristic value, wherein the target order is an order of exponential Golomb coding;
[0166] The processor 610 is further configured to perform entropy coding on the attribute information to be encoded based on an exponential Golomb coding algorithm of the target order to obtain an attribute code stream.
[0167] Optionally, the attribute code stream carries indication information of the target order.
[0168] Optionally, the attribute code stream carries an attribute information parameter set, where the attribute information parameter set includes the indication information and an attribute type corresponding to the indication information, where the attribute type is a type of the attribute information to be encoded.
[0169] Optionally, the target order is positively correlated with the distribution characteristic value.
[0170] Optionally, the processor 610 is further configured to:
[0171] Based on the rounded value of the ratio of the distribution characteristic value to the attribute quantization step length, a target order corresponding to the attribute information to be encoded is determined.
[0172] Optionally, the processor 610 is further configured to:
[0173] Determining a target index value based on a rounded value of a ratio of the distribution characteristic value to the attribute quantization step length;
[0174] The target order corresponding to the attribute information to be encoded is determined based on the stored correspondence between the exponential Golomb coding order and the index value, and the target order corresponds to the target index value.
[0175] Optionally, the processor 610 is further configured to:
[0176] Acquire target information corresponding to the attribute information to be encoded, the target information including at least one of a prediction residual and a transform coefficient;
[0177] The target information is entropy encoded using an exponential Golomb coding algorithm of the target order.
[0178] Optionally, the distribution characteristic value is determined based on at least one of the following:
[0179] The maximum value of the attribute information to be encoded;
[0180] The minimum value of the attribute information to be encoded;
[0181] The difference between the maximum value and the minimum value of the attribute information to be encoded;
[0182] The average value of the absolute values of the attribute information to be encoded.
[0183] In this embodiment, the processor 610 determines a distribution characteristic value, which is used to represent the distribution characteristic information of the attribute information to be encoded; the processor 610 determines the target order corresponding to the attribute information to be encoded based on the distribution characteristic value, and the target order is the order of the exponential Golomb coding; the processor 610 performs entropy coding on the attribute information to be encoded based on the exponential Golomb coding algorithm of the target order to obtain an attribute code stream. In this way, in the process of encoding the attribute information of the point cloud, the target order can be adaptively determined based on the distribution characteristic information of the attribute information to be encoded, and the exponential Golomb coding algorithm of the target order is used to entropy code the attribute information to be encoded, which can improve the effect of removing redundancy between information, thereby improving the coding efficiency.
[0184] In one implementation, the electronic device is used to execute a point cloud decoding processing method, wherein:
[0185] Processor 610, used to determine a target order corresponding to a to-be-decoded attribute code stream, the target order being an order of exponential Golomb decoding;
[0186] The processor 610 is further configured to perform entropy decoding on the attribute code stream to be decoded based on the exponential Golomb decoding algorithm of the target order.
[0187] Optionally, the attribute code stream to be decoded carries indication information for indicating the target order.
[0188] Optionally, the attribute code stream to be decoded carries an attribute information parameter set, the attribute information parameter set includes the indication information and an attribute type corresponding to the indication information, and the attribute type is a type of attribute information corresponding to the attribute code stream to be decoded.
[0189] The electronic device provided in this embodiment can realize Figure 4 To avoid repetition, the various processes implemented by the method embodiment are not described here.
[0190] It should be understood that in the embodiment of the present application, the input unit 604 may include a graphics processor (GPU) 6041 and a microphone 6042, and the graphics processor 6041 processes the image data of a static picture or video obtained by an image capture device (such as a camera) in a video capture mode or an image capture mode. The display unit 606 may include a display panel 6061, and the display panel 6061 may be configured in the form of a liquid crystal display, an organic light emitting diode, etc. The user input unit 607 includes a touch panel 6071 and at least one of other input devices 6072. The touch panel 6071 is also called a touch screen. The touch panel 6071 may include two parts: a touch detection device and a touch controller. Other input devices 6072 may include, but are not limited to, a physical keyboard, function keys (such as a volume control button, a switch button, etc.), a trackball, a mouse, and a joystick, which will not be repeated here.
[0191] The memory 609 can be used to store software programs and various data. The memory 609 may mainly include a first storage area for storing programs or instructions and a second storage area for storing data, wherein the first storage area may store an operating system, an application program or instructions required for at least one function (such as a sound playback function, an image playback function, etc.), etc. In addition, the memory 609 may include a volatile memory or a non-volatile memory, or the memory 609 may include both volatile and non-volatile memories. Among them, the non-volatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM), a static random access memory (SRAM), a dynamic random access memory (DRAM), a synchronous dynamic random access memory (SDRAM), a double data rate synchronous dynamic random access memory (DDRSDRAM), an enhanced synchronous dynamic random access memory (ESDRAM), a synchronous link dynamic random access memory (SLDRAM) and a direct memory bus random access memory (DRRAM). The memory 609 in the embodiment of the present application includes but is not limited to these and any other suitable types of memory.
[0192] The processor 610 may include one or more processing units; optionally, the processor 610 integrates an application processor and a modem processor, wherein the application processor mainly processes operations related to an operating system, a user interface, and application programs, and the modem processor mainly processes wireless communication signals, such as a baseband processor. It is understandable that the modem processor may not be integrated into the processor 610.
[0193] An embodiment of the present application also provides a readable storage medium, on which a program or instruction is stored. When the program or instruction is executed by a processor, the various processes of the above-mentioned point cloud encoding processing method embodiment are implemented, or when the program or instruction is executed by a processor, the various processes of the above-mentioned point cloud decoding processing method embodiment are implemented, and the same technical effect can be achieved. To avoid repetition, it will not be repeated here.
[0194] The processor is the processor in the electronic device described in the above embodiment. The readable storage medium includes a computer readable storage medium, such as a computer read-only memory ROM, a random access memory RAM, a magnetic disk or an optical disk.
[0195] An embodiment of the present application further provides a chip, which includes a processor and a communication interface, wherein the communication interface is coupled to the processor, and the processor is used to run programs or instructions to implement the various processes of the above-mentioned point cloud encoding processing method embodiment, or the processor is used to run programs or instructions to implement the various processes of the above-mentioned point cloud decoding processing method embodiment, and can achieve the same technical effect. To avoid repetition, it will not be repeated here.
[0196] It should be understood that the chip mentioned in the embodiments of the present application can also be called a system-level chip, a system chip, a chip system or a system-on-chip chip, etc.
[0197] An embodiment of the present application provides a computer program product, which is stored in a storage medium. The program product is executed by at least one processor to implement the various processes of the above-mentioned point cloud encoding processing method embodiment, or the program product is executed by at least one processor to implement the various processes of the above-mentioned point cloud decoding processing method embodiment, and can achieve the same technical effect. To avoid repetition, it will not be repeated here.
[0198] It should be noted that, in this article, the terms "comprise", "include" or any other variant thereof are intended to cover non-exclusive inclusion, so that the process, method, article or device including a series of elements includes not only those elements, but also includes other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise one..." do not exclude the presence of other identical elements in the process, method, article or device including the element. In addition, it should be pointed out that the scope of the methods and devices in the embodiments of the present application is not limited to performing functions in the order shown or discussed, and may also include performing functions in a substantially simultaneous manner or in reverse order according to the functions involved, for example, the described method may be performed in an order different from that described, and various steps may also be added, omitted, or combined. In addition, the features described with reference to certain examples may be combined in other examples.
[0199] Through the description of the above implementation methods, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus a necessary general hardware platform, and of course by hardware, but in many cases the former is a better implementation method. Based on such an understanding, the technical solution of the present application, or the part that contributes to the prior art, can be embodied in the form of a computer software product, which is stored in a storage medium (such as ROM / RAM, a disk, or an optical disk), and includes a number of instructions for a terminal (which can be a mobile phone, a computer, a server, or a network device, etc.) to execute the methods described in each embodiment of the present application.
[0200] The embodiments of the present application are described above in conjunction with the accompanying drawings, but the present application is not limited to the above-mentioned specific implementation methods. The above-mentioned specific implementation methods are merely illustrative and not restrictive. Under the guidance of the present application, ordinary technicians in this field can also make many forms without departing from the purpose of the present application and the scope of protection of the claims, all of which are within the protection of the present application.
Claims
1. A point cloud coding processing method, characterized in that: include: Determining a distribution characteristic value, wherein the distribution characteristic value is used to represent distribution characteristic information of the attribute information to be encoded; Determine a target order corresponding to the attribute information to be encoded based on the distribution characteristic value, wherein the target order is the order of exponential Golomb coding; Performing entropy coding on the attribute information to be encoded based on the exponential Golomb coding algorithm of the target order to obtain an attribute code stream; The determining, based on the distribution characteristic value, a target order corresponding to the attribute information to be encoded includes: Based on the ratio of the distribution characteristic value to the attribute quantization step length, a target order corresponding to the attribute information to be encoded is determined.
2. The method according to claim 1, characterized in that The attribute code stream carries indication information for indicating the target order.
3. The method according to claim 2, characterized in that The attribute code stream carries an attribute information parameter set, and the attribute information parameter set includes the indication information and the attribute type corresponding to the indication information, and the attribute type is the type of the attribute information to be encoded.
4. The method according to any one of claims 1 to 3, characterized in that: The target order is positively correlated with the distribution characteristic value.
5. The method according to claim 1, characterized in that The determining, based on the ratio of the distribution characteristic value to the attribute quantization step length, a target order corresponding to the attribute information to be encoded includes: Based on the rounded value of the ratio of the distribution characteristic value to the attribute quantization step length, a target order corresponding to the attribute information to be encoded is determined.
6. The method according to claim 1, characterized in that The determining, based on the ratio of the distribution characteristic value to the attribute quantization step length, a target order corresponding to the attribute information to be encoded includes: Determining a target index value based on a ratio of the distribution characteristic value to the attribute quantization step size; The target order corresponding to the attribute information to be encoded is determined based on the stored correspondence between the exponential Golomb coding order and the index value, and the target order corresponds to the target index value.
7. The method according to claim 1, characterized in that The exponential Golomb coding algorithm based on the target order performs entropy coding on the attribute information to be encoded, comprising: Acquire target information corresponding to the attribute information to be encoded, the target information including at least one of a prediction residual and a transform coefficient; The target information is entropy encoded using an exponential Golomb coding algorithm of the target order.
8. The method according to any one of claims 1 to 3 or any one of claims 5 to 7, characterized in that: The distribution characteristic value is determined based on at least one of the following: The maximum value of the attribute information to be encoded; The minimum value of the attribute information to be encoded; The difference between the maximum value and the minimum value of the attribute information to be encoded; The average value of the absolute values of the attribute information to be encoded.
9. A point cloud decoding processing method, characterized in that: include: Determine a target order corresponding to the attribute code stream to be decoded, wherein the target order is the order of Exponential Golomb decoding; Performing entropy decoding on the attribute code stream to be decoded based on the exponential Golomb decoding algorithm of the target order; The target order is determined based on the ratio of the distribution characteristic value to the attribute quantization step length, and the distribution characteristic value is used to represent the distribution characteristic information of the attribute information to be encoded at the encoding end.
10. The method according to claim 9, characterized in that The attribute code stream to be decoded carries indication information for indicating the target order.
11. The method according to claim 10, characterized in that The attribute code stream to be decoded carries an attribute information parameter set, and the attribute information parameter set includes the indication information and the attribute type corresponding to the indication information, and the attribute type is the type of attribute information corresponding to the attribute code stream to be decoded.
12. A point cloud coding processing device, characterized in that: include: A first determining module, used to determine a distribution characteristic value, where the distribution characteristic value is used to represent distribution characteristic information of the attribute information to be encoded; A second determination module is used to determine a target order corresponding to the attribute information to be encoded based on the distribution characteristic value, wherein the target order is an order of exponential Golomb coding; A coding module, configured to perform entropy coding on the attribute information to be coded based on an exponential Golomb coding algorithm of the target order to obtain an attribute code stream; The second determining module is specifically used for: Based on the ratio of the distribution characteristic value to the attribute quantization step length, a target order corresponding to the attribute information to be encoded is determined.
13. The device according to claim 12, characterized in that The attribute code stream carries indication information of the target order.
14. The device according to claim 13, characterized in that The attribute code stream carries an attribute information parameter set, and the attribute information parameter set includes the indication information and the attribute type corresponding to the indication information, and the attribute type is the type of the attribute information to be encoded.
15. The device according to any one of claims 12 to 14, characterized in that The target order is positively correlated with the distribution characteristic value.
16. The device according to claim 12, characterized in that The second determining module is specifically used for: Based on the rounded value of the ratio of the distribution characteristic value to the attribute quantization step length, a target order corresponding to the attribute information to be encoded is determined.
17. The device according to claim 12, characterized in that The second determining module is specifically used for: Determining a target index value based on a ratio of the distribution characteristic value to the attribute quantization step size; The target order corresponding to the attribute information to be encoded is determined based on the stored correspondence between the exponential Golomb coding order and the index value, and the target order corresponds to the target index value.
18. The device according to claim 12, characterized in that The encoding module is specifically used for: Acquire target information corresponding to the attribute information to be encoded, the target information including at least one of a prediction residual and a transform coefficient; The target information is entropy encoded using an exponential Golomb coding algorithm of the target order to obtain an attribute code stream.
19. The device according to any one of claims 12 to 14 or any one of claims 16 to 18, characterized in that The distribution characteristic value is determined based on at least one of the following: The maximum value of the attribute information to be encoded; The minimum value of the attribute information to be encoded; The difference between the maximum value and the minimum value of the attribute information to be encoded; The average value of the absolute values of the attribute information to be encoded.
20. A point cloud decoding processing device, characterized in that: include: A determination module, used to determine a target order corresponding to a to-be-decoded attribute code stream, wherein the target order is an order of exponential Golomb decoding; A decoding module, used for performing entropy decoding on the attribute code stream to be decoded based on an exponential Golomb decoding algorithm of the target order; The target order is determined based on the ratio of the distribution characteristic value to the attribute quantization step length, and the distribution characteristic value is used to represent the distribution characteristic information of the attribute information to be encoded at the encoding end.
21. The device according to claim 20, characterized in that The attribute code stream to be decoded carries indication information for indicating the target order.
22. The device according to claim 21, characterized in that The attribute code stream to be decoded carries an attribute information parameter set, and the attribute information parameter set includes the indication information and the attribute type corresponding to the indication information, and the attribute type is the type of attribute information corresponding to the attribute code stream to be decoded.
23. An electronic device, characterized in that: It includes a processor and a memory, the memory stores a program or instruction that can be run on the processor, and when the program or instruction is executed by the processor, the steps of the point cloud encoding processing method as described in any one of claims 1 to 8 are implemented; or, when the program or instruction is executed by the processor, the steps of the point cloud decoding processing method as described in any one of claims 9 to 11 are implemented.
24. A readable storage medium, characterized in that: The readable storage medium stores a program or instruction, and when the program or instruction is executed by the processor, the steps of the point cloud encoding processing method as described in any one of claims 1 to 8 are implemented; or, when the program or instruction is executed by the processor, the steps of the point cloud decoding processing method as described in any one of claims 9 to 11 are implemented.
Citation Information
Patent Citations
Precoding code list optimization method and precoding method
CN102413324A
Method and device for encoding or decoding three-dimensional data point set
CN111247798A
Point cloud attribute encoding and decoding method and device based on hybrid encoding
CN112565734A