WO2021062771A1 - 颜色分量预测方法、编码器、解码器及计算机存储介质 - Google Patents

颜色分量预测方法、编码器、解码器及计算机存储介质 Download PDF

Info

Publication number
WO2021062771A1
WO2021062771A1 PCT/CN2019/109694 CN2019109694W WO2021062771A1 WO 2021062771 A1 WO2021062771 A1 WO 2021062771A1 CN 2019109694 W CN2019109694 W CN 2019109694W WO 2021062771 A1 WO2021062771 A1 WO 2021062771A1
Authority
WO
WIPO (PCT)
Prior art keywords
point
color component
model parameter
value
prediction
Prior art date
Application number
PCT/CN2019/109694
Other languages
English (en)
French (fr)
Inventor
张伟
杨付正
万帅
马彦卓
霍俊彦
杨丽慧
代娜
张苏军
Original Assignee
Oppo广东移动通信有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oppo广东移动通信有限公司 filed Critical Oppo广东移动通信有限公司
Priority to CN201980097731.3A priority Critical patent/CN114009014A/zh
Priority to PCT/CN2019/109694 priority patent/WO2021062771A1/zh
Publication of WO2021062771A1 publication Critical patent/WO2021062771A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode

Definitions

  • the embodiments of the present application relate to the field of video coding and decoding technologies, and in particular, to a color component prediction method, an encoder, a decoder, and a computer storage medium.
  • G-PCC Geometry-based Point Cloud Compression
  • the coding of attribute information is mainly aimed at the coding of color information.
  • the color information is converted from the RGB color space to the YUV color space.
  • the reconstructed geometric information is used to recolor the point cloud, so that the uncoded attribute information corresponds to the reconstructed geometric information.
  • color information coding there are mainly two transformation methods.
  • One is the distance-based lifting transformation that relies on the level of detail (Level of Detail, LOD) division, and the other is the direct region adaptive hierarchical transformation (Region Adaptive Hierarchal). Transform, RAHT), these two methods will transform the color information from the spatial domain to the frequency domain, obtain high-frequency coefficients and low-frequency coefficients through the transformation, and finally quantize and encode the coefficients to generate a binary code stream.
  • the embodiments of the present application provide a color component prediction method, an encoder, a decoder, and a computer storage medium, which can remove the correlation between the three color components in the RAHT transform, effectively reduce the coding bit overhead, and thereby improve the coding and decoding efficiency.
  • an embodiment of the present application provides a color component prediction method, which is applied to an encoder, and the method includes:
  • the space block construct a prediction model; wherein the prediction model is used to characterize the prediction relationship between the first color component and the second color component of the point to be coded;
  • the difference between the second color component value and the predicted value of the second color component is calculated, the obtained difference is used as the residual of the point to be coded, and the residual of the point to be coded is subjected to regional adaptive hierarchical transformation RAHT transformation.
  • an embodiment of the present application provides a color component prediction method, which is applied to a decoder, and the method includes:
  • the reconstruction value of the second color component of the point to be decoded is calculated.
  • an encoder which includes a first determination unit, a first construction unit, a first prediction unit, a first calculation unit, and a transformation unit, wherein:
  • the first determining unit is configured to determine the spatial block where the point to be coded is located, and the first color component value and the second color component value of the code point;
  • the first construction unit is configured to construct a prediction model according to the space block; wherein the prediction model is used to characterize the prediction relationship between the first color component and the second color component of the point to be coded;
  • the first prediction unit is configured to use the prediction model and the first color component value to obtain the second color component prediction value of the point to be coded;
  • the first calculation unit is configured to calculate the difference between the second color component value and the second color component predicted value, and use the obtained difference as the residual of the point to be coded;
  • the transformation unit is configured to perform RAHT transformation on the residual of the point to be coded.
  • an embodiment of the present application provides a decoder, which includes a second determination unit, a parsing unit, a second construction unit, a second prediction unit, an inverse transformation unit, and a second calculation unit, wherein:
  • the second determining unit is configured to determine the spatial block where the point to be decoded is located
  • the parsing unit is configured to analyze the attribute bit stream to obtain the first color component value of the point to be decoded, the initial residual, and the first model parameter and the second model parameter corresponding to the space block;
  • the second construction unit is configured to construct a prediction model according to the first model parameter and the second model parameter; wherein the prediction model is used to characterize the prediction relationship between the first color component and the second color component of the point to be decoded;
  • the second prediction unit is configured to use the prediction model and the first color component value to obtain the second color component prediction value of the point to be decoded;
  • the inverse transform unit is configured to perform RAHT inverse transform on the parsed initial residual to obtain the residual of the point to be decoded;
  • the second calculation unit is configured to calculate the reconstructed value of the second color component of the point to be decoded according to the residual of the point to be decoded and the predicted value of the second color component.
  • an encoder which includes a first memory and a first processor, wherein:
  • the first memory is used to store a computer program that can run on the first processor
  • the first processor is configured to execute the method described in the first aspect when the computer program is running.
  • an embodiment of the present application provides a decoder, the decoder includes a second memory and a second processor, wherein:
  • the second memory is used to store a computer program that can run on the second processor
  • the second processor is configured to execute the method described in the second aspect when the computer program is running.
  • an embodiment of the present application provides a computer storage medium that stores a computer program, and when the computer program is executed by a first processor, the method described in the first aspect is implemented, or when the computer program is executed by the second processor. The method described in the second aspect is implemented during execution.
  • the embodiments of the present application provide a color component prediction method, an encoder, a decoder, and a computer storage medium.
  • the method can be applied to an encoder by determining the spatial block of the point to be encoded and the first of the encoding point.
  • Color component value and second color component value construct a prediction model according to the space block, and the prediction model is used to characterize the prediction relationship between the first color component and the second color component of the point to be coded; reuse the prediction model, and The first color component value, the second color component predicted value of the point to be coded is obtained; finally the difference between the second color component value and the second color component predicted value is calculated, and the obtained difference is used as the residual of the point to be coded , RAHT transformation is performed on the residuals of the points to be coded; in this way, one color component is used to predict another color component to obtain a predicted value, so that the prediction residual is calculated based on the actual value and the predicted value, which can remove the correlation between the color components
  • This method can effectively reduce coding bit overhead and improve coding efficiency; this method can also be applied to decoders by determining the spatial block of the point to be decoded; analyzing the attribute bit stream to obtain the first color component of the point to be decoded Value, the initial residual, and the first model parameter
  • the prediction relationship between the second color components then use the prediction model and the first color component value to obtain the predicted value of the second color component of the point to be decoded; finally perform the inverse RAHT transform on the parsed initial residual to obtain the point to be decoded
  • the second color component reconstruction value of the point to be decoded is calculated; in this way, one color component is used to predict the other color components to obtain the predicted value, Therefore, the attribute value is reconstructed according to the predicted value and the predicted residual obtained by the analysis. Since the correlation between the color components is removed, the coding bit overhead is effectively reduced, and the coding and decoding efficiency is improved.
  • Figure 1 is a flow diagram of a G-PCC encoding provided by related technical solutions
  • FIG. 2 is a flow diagram of a G-PCC decoding provided by related technical solutions
  • Figure 3 is a schematic diagram of a hierarchical RAHT transformation provided by related technical solutions
  • FIG. 4 is a schematic flowchart of a color component prediction method provided by an embodiment of the application.
  • Fig. 5 is a flow chart of a G-PCC encoding provided by an embodiment of the application.
  • FIG. 6 is a schematic flowchart of another color component prediction method provided by an embodiment of the application.
  • FIG. 7 is a block diagram of a flow of G-PCC decoding provided by an embodiment of this application.
  • FIG. 8 is a schematic diagram of the composition structure of an encoder provided by an embodiment of the application.
  • FIG. 9 is a schematic diagram of a specific hardware structure of an encoder provided by an embodiment of the application.
  • FIG. 10 is a schematic diagram of the composition structure of a decoder provided by an embodiment of the application.
  • FIG. 11 is a schematic diagram of a specific hardware structure of a decoder provided by an embodiment of the application.
  • each slice is encoded independently.
  • Fig. 1 shows a flow diagram of a G-PCC encoding provided by related technical solutions.
  • the point cloud encoder For the point cloud data to be encoded, the point cloud data is first divided into multiple slices through slice division. In each slice, the geometric information of the point cloud and the attribute information corresponding to each point cloud are coded separately. In the geometric encoding process, the geometric information is coordinated to convert the point cloud into a bounding box (bounding box), and then quantized. This step of quantization mainly plays the role of scaling.
  • the process of quantifying and removing the duplicate points is also called the voxelization process. Then divide the bounding box into an octree. In the octree-based geometric information encoding process, the bounding box is divided into eight sub-cubes, and the non-empty (including points in the point cloud) sub-cubes are continued to be divided into eight equal parts until the leaf knots are obtained.
  • the division is stopped, and the points in the leaf nodes are arithmetic coded to generate a binary geometric bit stream, that is, a geometric code stream.
  • octree division In the process of encoding geometric information based on triangles (triangle soup, trisoup), octree division must also be performed first, but different from the geometric information encoding based on octrees, the trisoup does not need to step-by-step the point cloud. Divide into a unit cube with a side length of 1x1x1, but divide it into a block (sub-block) when the side length is W, and stop dividing.
  • Attribute coding is mainly for color information.
  • the process of color information coding there are mainly two transformation methods. One is distance-based lifting transformation that relies on Level of Detail (LOD) division, and the other is direct area adaptation.
  • LOD Level of Detail
  • Hierarchical transform (Region Adaptive Hierarchal Transform, RAHT) transformation
  • these two methods will transform the color information from the spatial domain to the frequency domain, obtain high-frequency coefficients and low-frequency coefficients through the transformation, and finally quantize the coefficients (ie, quantized coefficients)
  • the geometrically coded data and the quantized coefficient processing attribute coded data are slice-synthesized, and then the vertex coordinates of each block (that is, arithmetic coding) are sequentially coded to generate a binary attribute bit stream, That is, the attribute code stream.
  • FIG. 2 shows a block diagram of a G-PCC decoding process provided by related technical solutions.
  • the G-PCC decoding process block diagram shown in Fig. 2, it is applied to the point cloud decoder.
  • the geometric bit stream and the attribute bit stream in the binary code stream are first decoded independently.
  • the RAHT transform is the part that encodes the attribute information of the point cloud, and the lossy coding is carried out through the principle of Harr wavelet transform, which is generally suitable for sparse point clouds.
  • Harr wavelet transform which is generally suitable for sparse point clouds.
  • the geometric coordinate information of the point cloud has been obtained.
  • the Morton code corresponding to each point in the point cloud can be obtained.
  • Morton coding is also called z-order code, because its coding sequence is in spatial z order.
  • the specific method of calculating the Morton code is described as follows. For each component of the three-dimensional coordinate represented by a d-bit binary number, the representation of the three coordinate components is realized by the following:
  • Morton code M is to start from the highest position of x, y, z, and alternately arrange x l , y l , z l to the lowest position in turn.
  • the calculation formula of M is as follows:
  • RAHT transformation is carried out on the basis of the hierarchical structure obtained by dividing the point cloud data into an octree. Starting from the bottom layer of the octree, the transformation is carried out hierarchically. As shown in Figure 3, voxel block 1 is obtained after the octree division is completed (that is, the geometry with three different color depths in Figure 3, and each square represents a point in the point cloud). Start the RAHT transformation from the bottom layer, taking the transformation order xyz as an example, as shown in Figure 3 below, first perform the RAHT transformation along the x direction.
  • RAHT is performed on the two to obtain the weighted average (DC coefficient) and residual (AC coefficient) of the attribute values of the two adjacent points.
  • DC coefficient weighted average
  • AC coefficient residual
  • the obtained DC coefficients exist as the attribute information of the voxel block 2 of the parent node, and the RAHT transform of the next layer is performed; and the AC coefficients are retained and used for the final coding.
  • the attribute value of the voxel block is directly transferred to the second-level parent node. In the second layer of RAHT transformation, it is performed along the y direction.
  • RAHT is performed on the two, and the weighted average (DC coefficient) and residual (AC coefficient) of the attribute values of two adjacent points are obtained. ).
  • DC coefficient weighted average
  • AC coefficient residual
  • the third layer of RAHT transformation is performed along the z direction, and the parent node voxel block 3 with three different color depths is obtained as the child node of the next layer in the octree, and then the RAHT transformation is performed cyclically along the x, y, and z directions. , Until there is only one parent node in the entire point cloud.
  • w is the weight corresponding to the DC coefficient, which is calculated.
  • the DC coefficient is the weighted average of the attributes
  • the AC coefficient is the attribute residuals of two adjacent points.
  • the three color components of the attribute information (which can be represented by Y, U, and V respectively) are calculated separately for the RAHT transformation, and the three are independent of each other and have no influence.
  • the child node can be up-sampled and calculated to obtain the predicted attribute value of the child node.
  • the specific process is as follows:
  • d i represents the distance from the center point of the center point from the ion parent node adjacent i
  • a i represents the attribute value of the parent node
  • the inverse RAHT transform is the part that decodes the attribute information of the point cloud, which is similar to the encoding process.
  • RAHT inverse transformation Before RAHT inverse transformation, first calculate the Morton code of each point in the point cloud, and after obtaining the Morton code M of each point, arrange the points in the point cloud in ascending order, and put each The weight of the point is set to 1, and the RAHT inverse process still traverses all the points in the point cloud according to the order after Morton code sorting.
  • the RAHT transformation is carried out by layering, starting from the bottom layer, the adjacent points in the point cloud are judged layer by layer, and RAHT transformation is performed on the attribute value according to the weight.
  • the inverse RAHT transform starts from the top layer and performs the inverse RAHT transform from top to bottom; that is to say, when performing the inverse RAHT transform, start from the top layer and perform adjacent nodes based on the Morton code information of each layer.
  • the current solution is to perform RAHT transformations on the three channels corresponding to the three color components of the attribute (which can be represented by Y, U, and V respectively), and the three are independent of each other. Because there is a certain correlation between these three color components before the RAHT transformation, the number of coding bits will be increased when the RAHT transformation is performed, which reduces the coding efficiency.
  • the embodiment of the present application provides a color component prediction method, which is applied to an encoder by determining the spatial block of a point to be coded, and the first color component value and the second color component value of the code point;
  • the space block constructs a prediction model that is used to characterize the prediction relationship between the first color component and the second color component of the point to be coded; the prediction model and the value of the first color component are then used to obtain the value of the point to be coded The second color component predicted value; finally, the difference between the second color component value and the second color component predicted value is calculated, the obtained difference is used as the residual of the point to be coded, and the residual of the point to be coded is subjected to RAHT transformation;
  • this method is also applied to the decoder, by determining the
  • the parsed initial residual is inversely transformed by RAHT to obtain the residual of the point to be decoded; according to the residual sum of the point to be decoded
  • the second color component prediction value is calculated to obtain the second color component reconstruction value of the point to be decoded; in this way, one color component is used to predict another color component to obtain a prediction value, and then the prediction value and the prediction residual obtained by analysis are performed.
  • the reconstruction of the attribute value because the correlation between the color components is removed, effectively reduces the coding bit overhead, thereby improving the coding and decoding efficiency.
  • FIG. 4 shows a schematic flow chart of a color component prediction method provided by an embodiment of the present application.
  • the method is applied to an encoder (may also be referred to as a point cloud encoder).
  • the method may include:
  • S401 Determine the spatial block where the point to be coded is located, and the first color component value and the second color component value of the code point;
  • S402 Construct a prediction model according to the space block; wherein the prediction model is used to characterize the prediction relationship between the first color component and the second color component of the point to be coded;
  • the point to be coded represents the point cloud data of the object to be coded in the point cloud.
  • multiple spatial blocks can be obtained. From these multiple spatial blocks, the spatial block where the point to be coded is located can be determined, so as to construct a prediction model based on the spatial block subsequently, so as to realize the prediction between color components.
  • the first color component, the second color component, and the third color component can be used to represent the three color attributes of the point to be coded.
  • these three color attributes can be represented by Y, U, V; specifically, the first color component can be represented by Y, the second color component can be represented by U, and the third color component can be represented by V; or the first color The component can be represented by Y, the second color component can be represented by V, and the third color component can be represented by U; the embodiment of the present application does not specifically limit it.
  • these three color attributes can be represented by R, G, and B; specifically, the first color component can be represented by R, the second color component can be represented by G, and the third color component can be represented by B; or the first color The component can be represented by R, the second color component can be represented by B, and the third color component can be represented by G; the embodiment of the present application does not specifically limit it.
  • a prediction model can be constructed, which can characterize the prediction relationship between the first color component and the second color component of the point to be coded. That is to say, by using the prediction model, the second color component of the point to be coded can be predicted according to the first color component of the point to be coded.
  • the prediction model can predict the U component based on the Y component of the point to be coded, that is, the prediction method in this embodiment of the application is suitable for using the Y component Prediction of the U component; assuming that the first color component is represented by Y and the second color component is represented by V, then the prediction model can also predict the V component based on the Y component of the point to be coded, that is, the prediction method of the embodiment of this application also It is suitable for the prediction of the V component using the Y component.
  • the first color component value of the point to be coded needs to be obtained at this time; in this way, according to the obtained first color component of the point to be coded Component value, the predicted value of the second color component of the point to be coded can be obtained through the prediction model.
  • the prediction model is used to predict the U component according to the Y component of the point to be coded, then the obtained first color component value is the Y component value, and the second color component value is the U component value.
  • the prediction model and Y component value can get the U component prediction value of the point to be coded, and then the residual can be calculated based on the U component value and the U component prediction value; if the prediction model is used to predict V based on the Y component of the point to be coded Component, the obtained first color component value is the Y component value, and the second color component value is the V component value.
  • the V component prediction value of the point to be coded can be obtained, and then the V component prediction value of the point to be encoded can be obtained according to V
  • the component value and the predicted value of the V component are used to calculate the residual.
  • S404 Calculate the difference between the second color component value and the predicted value of the second color component, use the obtained difference as the residual of the point to be coded, and perform calculation on the residual of the point to be coded.
  • Regional adaptive hierarchical transform RAHT transform
  • the difference between the second color component value (actual value) of the point to be coded and the predicted value of the second color component can be used to obtain the predicted value of the second color component.
  • the residual of the code point is then RAHT transformed according to the residual of the point to be coded.
  • the embodiment of the present application can perform lossless prediction on the attribute information of the point cloud, and effectively reduce the coding bit overhead while obtaining the same image coding quality, thereby improving the coding efficiency.
  • the image coding quality can use objective quality evaluation criteria, such as Peak Signal to Noise Ratio (PSNR), or subjective quality evaluation criteria, such as Mean Opinion Score (MOS).
  • PSNR Peak Signal to Noise Ratio
  • MOS Mean Opinion Score
  • the method may further include:
  • the residuals of the points to be coded are coded and written into the attribute bit stream.
  • the bitstream may include geometric bitstream and attribute bitstream.
  • the geometric bitstream includes the geometric information of the cloud, such as position coordinate information
  • the attribute bitstream includes the attribute information of the cloud, such as three kinds of color information.
  • FIG. 5 shows a flow diagram of a G-PCC encoding provided by an embodiment of the present application.
  • a part of the prediction transformation between attribute color channels is added before the RAHT transformation.
  • the prediction method of the embodiment of the present application is mainly applied to this part to realize the attribute prediction between color channels.
  • one color component is used to predict another color component to obtain a predicted value, and the correlation between the three color channels is removed, so that the coding efficiency can be improved.
  • the embodiment of the present application provides a color component prediction method, which can be applied to an encoder by determining the spatial block of a point to be coded, and the first color component value and the second color component value of the code point; According to the space block, a prediction model is constructed, which is used to characterize the prediction relationship between the first color component and the second color component of the point to be coded; the prediction model and the value of the first color component are then used to obtain the point to be coded The predicted value of the second color component; finally calculate the difference between the second color component value and the predicted value of the second color component, use the obtained difference as the residual of the point to be coded, and perform the RAHT transformation on the residual of the point to be coded ; In this way, using one color component to predict another color component to obtain a predicted value, so as to calculate the prediction residual according to the actual value and the predicted value, which can remove the correlation between the color components, effectively reduce the coding bit overhead, and can Improve coding efficiency.
  • the spatial block may be obtained by spatial division of the point cloud. Therefore, in some embodiments, for S401, the determining the spatial block where the point to be encoded is located may include:
  • S401-a Perform spatial division of the point cloud to obtain at least one spatial block
  • the RAHT coding process is based on Morton code along the z, y, x direction RAHT transformation, and the three color components (such as Y component, U component and V component) are closer to the point , The higher the correlation; based on this, the point cloud can be spatially divided, so that at least one spatial block can be obtained.
  • the point cloud may be divided into multiple spatial blocks according to the spatial neighbor relationship between the points. Therefore, for S401-a, the spatial division of the point cloud to obtain at least one spatial block may include:
  • the point cloud is divided into a plurality of point sets, and the first degree of correlation between the first color component and the second color component in each point set is determined ;
  • the point cloud is spatially divided according to the determined first degree of correlation to obtain the at least one spatial block.
  • the point cloud can be divided into multiple point sets according to the spatial neighbor relationship between the points in the point cloud, so that the difference between the first color component and the second color component in each point set can be determined
  • the first degree of correlation can then divide the point cloud into spatial blocks with higher correlation between color components.
  • the point cloud may be spatially divided according to the first correlation between the Y component and the U component in each point set, or it may be based on the first correlation between the Y component and the V component in each point set.
  • the point cloud is spatially divided according to the degree; since the closer the distance between the color components, the higher the correlation of the points, so that at least one spatial block can be obtained by performing the spatial division according to the first degree of correlation between the color components.
  • the point cloud can be divided into multiple spatial blocks according to the Morton code of the points in the point cloud. Therefore, for S401-a, the spatial division of the point cloud to obtain at least one spatial block includes:
  • the difference between the maximum value of the Morton code and the minimum value of the Morton code is calculated, and the obtained difference is bit-shifted by N bits in the preset direction to obtain the shifted difference; where N Is a positive integer greater than or equal to 1;
  • the point cloud is divided into the shifted difference space blocks.
  • the preset order may be ascending or descending; in the embodiment of the present application, the preset order is preferably ascending.
  • the preset direction may be shifted to the right or shifted to the left; in the embodiment of the present application, the preset direction is preferably shifted to the right, that is, the obtained difference is bit-shifted to the right by N bits.
  • the points may be all points in the point cloud, or some points in the point cloud, and these points are relatively concentrated in space.
  • the Morton codes of these points can be calculated and the calculated Morton codes are arranged in ascending order, and the Morton codes that will be obtained are arranged in ascending order; and then the Morton codes are determined
  • the maximum value and the minimum value of the Morton code are further calculated to obtain the difference between the maximum value of the Morton code and the minimum value of the Morton code (which can be represented by delta).
  • the delta bit By shifting the delta bit to the right, when the delta bit is shifted by N bits to the right, the shifted delta is obtained, which can make the shifted delta meet the preset range.
  • the point cloud can be divided into shifted delta Space block.
  • the delta bit is shifted to the right by N bits, which can be regarded as the maximum value bit of Morton code shifted to the right by N bits, and the minimum value bit of Morton code is shifted to the right by N bits, and then the difference between the two is calculated, and the difference is obtained That is, the delta bits are shifted right by N bits.
  • the preset range indicates the range that the number of space blocks divided by the point cloud needs to be met.
  • the preset range may be 16 ⁇ delta ⁇ 32, or 8 ⁇ delta ⁇ 16, which is not specifically limited in the embodiment of the present application.
  • the method may further include:
  • the preset direction is preferably shifted to the right, that is, the Morton code of the points in the point cloud is shifted to the right by N bits.
  • the Morton code values of some of these points are the same after shifting, then It can be determined that these points belong to the same space block, that is, the points with the same Morton code value after shifting to the right can be marked as "located in the same space block".
  • S401-b Determine the spatial block where the point to be encoded is located from the at least one spatial block based on the geometric position of the point to be encoded.
  • At least one space block can be obtained; in this way, according to the geometric position of the point to be coded, the space block where the point to be coded is located can be determined from the at least one space block, which is convenient for subsequent follow-up Construct a prediction model based on the space block.
  • the shape of the space block includes at least one of the following: a cube shape, a rectangular parallelepiped shape, and an irregular shape.
  • the space block can be a cuboid that divides the point cloud into a three-dimensional space, and the size of the cuboid is a ⁇ b ⁇ c; among them, the values of a, b, and c can be equal or unequal; here, when When the values of a, b, and c are equal, the cube is regarded as a special cuboid.
  • the space block can also be an irregular shape space block with strong correlation between color components, such as a triangle or a polygon. It can also be used to remove the correlation of the attribute color to obtain the prediction of the second color component. Residual.
  • constructing a prediction model according to the spatial block may include:
  • K points are selected from the space block, and the selected K points are formed into a point set; where K is a positive integer greater than or equal to 20;
  • model parameters based on the K points in the point set; wherein, the model parameters include a first model parameter and a second model parameter;
  • the prediction model is constructed.
  • K points can be selected from the points contained in the space block, and the selected K points can be formed into a point set; here, the value of K can be greater than or equal to 20 It is a positive integer, but the embodiment of the present application does not specifically limit it.
  • one point can be selected for every k (100 ⁇ k ⁇ 500) points in the space block. If the number of points contained in the space block is too few, 20 points can be selected uniformly Points; make the number of points selected for each space block not less than 20 points.
  • the first model parameter can be determined according to the color attribute values of these points in the point set (such as the first color component value, the second color component value, or the third color component value) And the second model parameters, and then construct a predictive model based on the first model parameters and the second model parameters.
  • the determining the model parameters based on the K points in the point set may include:
  • a second calculation sub-model is used to calculate the second model parameter.
  • constructing a predictive model can be regarded as a fitting straight line. That is, after the first model parameter and the second model parameter are determined, the fitted straight line can be obtained according to the first model parameter and the second model parameter.
  • the following will use the least squares method to fit a straight line as an example for detailed description. The specific process is as follows:
  • the coordinate x i represents the first color component value of any point (represented by the Y component value), and the coordinate y i represents the second color component of any point.
  • Value represented by the U component value
  • equation (7) is used to express the first calculation sub-model used to calculate the first model parameters
  • equation (8) is used to express the second calculation sub-model used to calculate the second model parameters; in this way, through the first calculation
  • the sub-model can obtain the first model parameter b
  • the second model parameter a can be obtained through the second calculation sub-model, so that the fitted straight line, that is, the prediction model, can be obtained.
  • the Y component can be used to predict the U component according to the prediction model, thereby obtaining the predicted value of the U component; then the actual value and the predicted value are used as residuals, And replace the original attribute value with the obtained residual, and then perform the subsequent RAHT transformation.
  • the difference and least squares method can also be used to fit the straight line.
  • Multiplicative methods are used to fit straight lines, such as gradient descent method or Gauss Newton method; in addition, the color attribute values of these points in the point set can also be used to fit a segmented straight line or curve to obtain a prediction model; The model parameters involved in the prediction model are written into the attribute bitstream.
  • the method may further include:
  • the first model parameter and the second model parameter are written into the attribute bitstream.
  • the first model parameters and the second model parameters can be written into the attribute bitstream, and then transmitted from the encoder side to the decoder side.
  • the side analyzes the attribute bit stream, so that the decoder side only needs to obtain the first model parameter and the second model parameter, so that the coding efficiency can be improved.
  • the first model parameter and the second model parameter can be further modified.
  • the first model parameter and the second model parameter can be quantified, and then written into the attribute bit stream; or, it can also be just the model parameters of the first space block (including the first model parameters and the second model parameters). ) Write the attribute bit stream, and modify the model parameter of the remaining space block to the residual value of the model parameter compared with the first space block, and then write the residual value into the attribute bit stream in turn.
  • writing the first model parameter and the second model parameter into an attribute bitstream may include:
  • the quantized first model parameter and the quantized second model parameter are written into the attribute bitstream.
  • first model parameter and the second model parameter are quantized on the encoder side, then after the attribute bitstream is parsed on the decoder side, the first model parameter and the second model parameter need to be reversed. Quantification processing.
  • the writing the first model parameter and the second model parameter into an attribute bitstream may include:
  • At least one space block includes the first space block and the remaining space block.
  • the encoder side first writes the attribute bit stream to the model parameter of the first space block (including the first model parameter and the second model parameter), and the remaining space
  • the model parameter of the block is modified to the residual value of the model parameter compared with the first spatial block, and then the residual value is written into the attribute bit stream in turn; then after the attribute bit stream is parsed on the decoder side, it needs to be analyzed according to the The residual values of the model parameters are obtained to determine the model parameters of the remaining space block.
  • the method may further include:
  • the correlation between the color channels is calculated according to the selected point set in the space block to obtain the second correlation degree, that is, the correlation of the parent space block.
  • the number of right shifts of the Morton code is reduced by one (assuming the number of right shifts is N, then the number of right shifts is reduced by one to N- 1)
  • the space block can be divided into two sub-space blocks.
  • the correlation calculation between the color channels is performed on the two subspace blocks to obtain the third correlation degree, that is, the correlation between the two subspace blocks.
  • the space block can be divided into two subspace blocks, that is, two subspace blocks are used to perform the prediction between the color channels respectively, that is, Construct two sub-prediction models based on the two sub-space blocks to predict the second color component based on the first color component; otherwise, if the correlation between the two sub-space blocks is less than or equal to the correlation of the parent space block, then the parent space block can be used to perform Prediction, that is, the flow of the prediction method shown in Figure 4 is executed.
  • the coding performance of the G-PCC attribute coding part can be improved.
  • the coding performance is basically not affected, for example, the PSNR of the attribute is not affected, the first color channel (indicated by Y), the second color channel (indicated by U) and the third color channel (indicated by U) of the attribute part can be reduced.
  • V represents the bit rate of).
  • PSNR is an objective evaluation criterion of image coding quality, and the larger the PSNR, the better the image coding quality.
  • BD-rate (Bjontegaard-Delta rate) can be used to measure the encoding performance. Specifically, as shown in Table 1, if the BD-rate is negative, then the performance becomes better; and if the BD-rate is The greater the absolute value, the greater the performance gain.
  • This embodiment provides a color component prediction method, which is applied to an encoder.
  • the specific implementation of the foregoing embodiment is described in detail through the foregoing embodiment. It can be seen from this that one color component is used to predict another color component to obtain a predicted value, so as to calculate the prediction residual based on the actual value and the predicted value. Removal of the correlation between color components effectively reduces coding bit overhead and can improve coding efficiency.
  • FIG. 6 shows a schematic flow chart of another color component prediction method provided by an embodiment of the present application.
  • the method is applied to a decoder (may also be referred to as a point cloud decoder).
  • the method may include:
  • S601 Determine the spatial block where the point to be decoded is located
  • the point to be decoded represents the point cloud data of the object to be decoded in the point cloud.
  • multiple spatial blocks can be obtained. From these multiple spatial blocks, the spatial block where the point to be decoded is located can be determined, so as to construct a prediction model based on the spatial block subsequently, so as to realize the prediction between color components.
  • the first color component, the second color component, and the third color component can be used to represent the three color attributes of the point to be decoded.
  • these three color attributes can be represented by Y, U, V; specifically, the first color component can be represented by Y, the second color component can be represented by U, and the third color component can be represented by V; or the first color The component can be represented by Y, the second color component can be represented by V, and the third color component can be represented by U; the embodiment of the present application does not specifically limit it.
  • these three color attributes can be represented by R, G, and B; specifically, the first color component can be represented by R, the second color component can be represented by G, and the third color component can be represented by B; or the first color The component can be represented by R, the second color component can be represented by B, and the third color component can be represented by G; the embodiment of the present application does not specifically limit it.
  • S602 Analyze the attribute bitstream to obtain the first color component value, the initial residual, and the first model parameter and the second model parameter corresponding to the spatial block of the point to be decoded;
  • the code stream when the code stream is transmitted from the encoder side to the decoder side, the code stream can be parsed by the decoder side.
  • the code stream can include geometric bit stream and attribute bit stream; among them, the geometric bit stream includes the geometric information of the point cloud.
  • the geometric information of the point cloud By parsing the geometric bit stream on the decoder side, the geometric information of the point cloud can be obtained, such as to be decoded.
  • the position coordinates of the point, etc.; the attribute bitstream includes the attribute information of the point cloud, and the attribute information of the point cloud can be obtained by parsing the attribute bitstream on the decoder side; such as the first color component value of the point to be decoded, and the initial residual Difference and the first model parameter and the second model parameter corresponding to the space block.
  • S603 Construct a prediction model according to the first model parameter and the second model parameter; wherein the prediction model is used to characterize the prediction relationship between the first color component and the second color component of the point to be decoded;
  • a prediction model can be constructed, and the prediction model can characterize the prediction relationship between the first color component and the second color component of the point to be decoded.
  • the second color component of the point to be decoded can be predicted according to the first color component of the point to be decoded.
  • the prediction model can predict the U component based on the Y component of the point to be decoded, that is, the prediction method in this embodiment of the application is suitable for using the Y component Prediction of the U component;
  • the prediction model can also predict the V component based on the Y component of the point to be decoded, that is, the prediction method in this embodiment of the application also It is suitable for the prediction of the V component using the Y component.
  • S604 Obtain a second color component prediction value of the point to be decoded by using the prediction model and the first color component value;
  • the first color component value of the point to be decoded needs to be obtained at this time; in this way, according to the obtained first color component of the point to be decoded Component value, the predicted value of the second color component of the point to be decoded can be obtained through the prediction model.
  • the prediction model is used to predict the U component based on the Y component of the point to be decoded, then the obtained first color component value is the Y component value, and the second color component value is the U component value.
  • the prediction model and the Y component value can be used to obtain the U component prediction value of the point to be decoded; or, if the prediction model is used to predict the V component based on the Y component of the point to be decoded, then the obtained first color component value is the Y component
  • the value of the second color component is the value of the V component, so according to the prediction model and the value of the Y component, the predicted value of the V component of the point to be decoded can be obtained.
  • S606 Calculate the second color component reconstruction value of the to-be-decoded point according to the residual of the to-be-decoded point and the predicted value of the second color component.
  • the initial residuals need to be inversely transformed by RAHT, so that the residuals of the points to be decoded can be obtained.
  • the residual of the point to be decoded and the predicted value of the second color component are obtained, the residual of the point to be decoded and the predicted value of the second color component are superimposed to obtain the reconstructed value of the second color component of the point to be decoded.
  • FIG. 7 shows a block diagram of a G-PCC decoding process provided by an embodiment of the present application.
  • the part of the inverse prediction transform between the attribute color channels is added.
  • the prediction method of the embodiment of the present application is mainly applied to this part to realize the attribute prediction between color channels.
  • one color component is used to predict another color component to obtain a predicted value.
  • the attribute information of the point cloud can be non-destructively predicted, the correlation between the three color channels is removed, and the In the case of the same image coding quality, the bit overhead is effectively reduced, thereby improving the decoding efficiency.
  • the image decoding quality can use objective quality evaluation criteria, such as Peak Signal to Noise Ratio (PSNR), or subjective quality evaluation criteria, such as Mean Opinion Score (MOS).
  • PSNR Peak Signal to Noise Ratio
  • MOS Mean Opinion Score
  • the embodiment of the present application provides a color component prediction method, which can be applied to a decoder by determining the spatial block of the point to be decoded; analyzing the attribute bit stream to obtain the first color component value of the point to be decoded, The initial residual and the first model parameter and the second model parameter corresponding to the spatial block; according to the first model parameter and the second model parameter, a prediction model is constructed, and the prediction model is used to characterize the first color component and the second The prediction relationship between the color components; then use the prediction model and the first color component value to obtain the second color component prediction value of the point to be decoded; finally perform the inverse RAHT transform on the parsed initial residual to obtain the residual of the point to be decoded Difference; According to the residual error of the point to be decoded and the predicted value of the second color component, the reconstruction value of the second color component of the point to be decoded is calculated; in this way, one color component is used to predict the other color components to obtain the predicted value, which is based on The predicted values and the
  • the spatial block may also be obtained by spatially dividing the point cloud. Therefore, in some embodiments, therefore, in some embodiments, for S601, the determining the spatial block where the point to be decoded is located may include:
  • S601-a Perform spatial division of the point cloud to obtain at least one spatial block
  • the RAHT encoding process is to perform RAHT transformation along the z, y, and x directions according to the Morton code
  • the RAHT decoding process is to perform the RAHT inverse transformation along the z, y, and x directions according to the Morton code
  • the point cloud may be divided into multiple spatial blocks according to the spatial neighbor relationship between the points. Therefore, for S601-a, the spatial division of the point cloud to obtain at least one spatial block may include:
  • the point cloud is divided into a plurality of point sets, and the first degree of correlation between the first color component and the second color component in each point set is determined ;
  • the point cloud is spatially divided according to the determined first degree of correlation to obtain the at least one spatial block.
  • the point cloud can be divided into multiple point sets according to the spatial neighbor relationship between the points in the point cloud, so that the difference between the first color component and the second color component in each point set can be determined
  • the first degree of correlation can then divide the point cloud into spatial blocks with higher correlation between color components.
  • the point cloud may be spatially divided according to the first correlation between the Y component and the U component in each point set, or it may be based on the first correlation between the Y component and the V component in each point set.
  • the point cloud is spatially divided according to the degree; since the closer the distance between the color components, the higher the correlation of the points, so that at least one spatial block can be obtained by performing the spatial division according to the first degree of correlation between the color components.
  • the point cloud can be divided into multiple spatial blocks according to the Morton code of the points in the point cloud. Therefore, for S601-a, the spatial division of the point cloud to obtain at least one spatial block includes:
  • the difference between the maximum value of the Morton code and the minimum value of the Morton code is calculated, and the obtained difference is bit-shifted by N bits in the preset direction to obtain the shifted difference; where N Is a positive integer greater than or equal to 1;
  • the point cloud is divided into the shifted difference space blocks.
  • the preset order may be ascending or descending; in the embodiment of the present application, the preset order is preferably ascending.
  • the preset direction may be shifted to the right or shifted to the left; in the embodiment of the present application, the preset direction is preferably shifted to the right, that is, the obtained difference value is bit-shifted to the right by N bits.
  • the points may be all points in the point cloud, or some points in the point cloud, and these points are relatively concentrated in space.
  • the Morton codes of these points can be calculated and the calculated Morton codes are arranged in ascending order, and the Morton codes that will be obtained are arranged in ascending order; and then the Morton codes are determined
  • the maximum value and the minimum value of the Morton code are further calculated to obtain the difference between the maximum value of the Morton code and the minimum value of the Morton code (which can be represented by delta).
  • the delta bit By shifting the delta bit to the right, when the delta bit is shifted by N bits to the right, the shifted delta is obtained, which can make the shifted delta meet the preset range.
  • the point cloud can be divided into shifted delta Space block.
  • the delta bit is shifted to the right by N bits, which can be regarded as the maximum value bit of Morton code shifted to the right by N bits, and the minimum value bit of Morton code is shifted to the right by N bits, and then the difference between the two is calculated, and the difference is obtained That is, the delta bits are shifted right by N bits.
  • the preset range indicates the range that the number of space blocks divided by the point cloud needs to be met.
  • the preset range may be 16 ⁇ delta ⁇ 32, or 8 ⁇ delta ⁇ 16, which is not specifically limited in the embodiment of the present application.
  • the method may further include:
  • the preset direction is preferably shifted to the right, that is, the Morton code of the points in the point cloud is shifted to the right by N bits.
  • the Morton code values of some of these points are the same after shifting, then It can be determined that these points belong to the same space block, that is, the points with the same Morton code value after shifting to the right can be marked as "located in the same space block".
  • S601-b Based on the geometric position of the to-be-decoded point, determine the spatial block where the to-be-decoded point is located from the at least one spatial block.
  • At least one spatial block can be obtained; in this way, according to the geometric position of the point to be decoded, the spatial block where the point to be decoded is located can be determined from the at least one spatial block, which is convenient for subsequent follow-up Construct a prediction model based on the space block.
  • the shape of the space block includes at least one of the following: a cube shape, a rectangular parallelepiped shape, and an irregular shape.
  • the space block can be a cuboid that divides the point cloud into a three-dimensional space, and the size of the cuboid is a ⁇ b ⁇ c; among them, the values of a, b, and c can be equal or unequal; here, when When the values of a, b, and c are equal, the cube is regarded as a special cuboid.
  • the space block can also be an irregular shape space block with strong correlation between color components, such as a triangle or a polygon, and can also be used to remove the correlation of attribute colors to improve decoding efficiency.
  • the first model parameter and the second model parameter after analyzing the attribute bitstream, the first model parameter and the second model parameter need to be dequantized; or, the first model parameter and the second model parameter may also be obtained through analysis.
  • the model parameters of each space block (including the first model parameter and the second model parameter) and the model parameter residual value of the remaining space block, and then the model parameter of the remaining space block is obtained according to the residual value of the model parameter.
  • the method may further include:
  • first model parameter and the second model parameter are quantized on the encoder side, then after the attribute bitstream is parsed on the decoder side, the first model parameter and the second model parameter need to be reversed. Quantitative processing to obtain the first model parameter and the second model parameter.
  • the method may further include:
  • the first model parameter and the second model parameter corresponding to the first space block and the residual value of the model parameter are obtained.
  • At least one space block includes the first space block and the remaining space block.
  • the encoder side first writes the attribute bit stream to the model parameter of the first space block (including the first model parameter and the second model parameter), and the remaining space
  • the model parameter of the block is modified to the residual value of the model parameter compared with the first spatial block, and then the residual value is written into the attribute bit stream in turn; then after the attribute bit stream is parsed on the decoder side, it needs to be analyzed according to the
  • the model parameter residual values obtained are used to determine the model parameters (including the first model parameter and the second model parameter) of the remaining space block.
  • the correlation calculation between the color channels is performed according to the selected point set in the space block to obtain the second correlation degree, that is, the correlation of the parent space block.
  • the second degree of correlation is low, for the point in the space block, the number of right shifts of the Morton code is reduced by one (assuming the number of right shifts is N, then the number of right shifts is reduced by one to N- 1)
  • the space block can be divided into two sub-space blocks. Then, the correlation calculation between the color channels is performed on the two subspace blocks to obtain the third correlation degree, that is, the correlation between the two subspace blocks.
  • the space block can be divided into two subspace blocks, that is, two subspace blocks are used to perform the prediction between the color channels respectively, that is, Construct two sub-prediction models based on the two sub-space blocks to predict the second color component based on the first color component; otherwise, if the correlation between the two sub-space blocks is less than or equal to the correlation of the parent space block, then the parent space block can be used to perform Prediction, that is, the flow of the prediction method shown in Figure 4 is executed.
  • the embodiment of the present application is to perform attribute prediction between color channels through the correlation between color channels under RAHT transformation.
  • space block division and straight line fitting are required, and the calculated first model parameters and second model parameters are written into the code stream and transmitted to the decoder.
  • the decoder side it only needs to divide the space block, and then predict the second color component value according to the first model parameter and the second model parameter of the corresponding space block obtained by the analysis and the first color component value, and finally the predicted value
  • the predicted value is superimposed with the residual value obtained after analysis and RAHT inverse transformation to obtain the required attribute reconstruction value.
  • the bit rate of the first color channel (represented by Y), the second color channel (represented by U), and the third color channel (represented by V) in the attribute part can be reduced without substantially affecting performance.
  • This embodiment provides a color component prediction method, which is applied to a decoder.
  • the specific implementation of the foregoing embodiment is described in detail through the foregoing embodiment. It can be seen that one color component is used to predict another color component to obtain a predicted value, so that the attribute value is calculated based on the predicted value and the predicted residual obtained by analysis. Because of the removal of the correlation between the color components, the decoding efficiency is improved.
  • FIG. 8 shows a schematic diagram of the composition structure of an encoder 80 provided by an embodiment of the present application.
  • the encoder 80 may include a first determination unit 801, a first construction unit 802, a first prediction unit 803, a first calculation unit 804, and a transformation unit 805, where
  • the first determining unit 801 is configured to determine the spatial block where the point to be coded is located, and the first color component value and the second color component value of the code point;
  • the first construction unit 802 is configured to construct a prediction model according to the space block; wherein the prediction model is used to characterize the prediction relationship between the first color component and the second color component of the point to be coded;
  • the first prediction unit 803 is configured to use the prediction model and the first color component value to obtain the second color component prediction value of the to-be-coded point;
  • the first calculation unit 804 is configured to calculate the difference between the second color component value and the second color component predicted value, and use the obtained difference as the residual of the point to be coded;
  • the transformation unit 805 is configured to perform RAHT transformation on the residuals of the points to be encoded.
  • the encoder 80 may further include a writing unit 806 configured to encode the residual of the point to be encoded and write the attribute bit stream.
  • the encoder 80 may further include a first dividing unit 807 configured to spatially divide the point cloud to obtain at least one spatial block;
  • the first determining unit 801 is configured to determine the spatial block where the point to be encoded is located from the at least one spatial block based on the geometric position of the point to be encoded.
  • the first determining unit 801 is further configured to divide the point cloud into a plurality of point sets according to the spatial neighbor relationship between the points in the point cloud, and determine that each point is concentrated A first degree of correlation between the first color component and the second color component;
  • the first dividing unit 807 is configured to spatially divide the point cloud according to the determined first degree of correlation to obtain the at least one spatial block.
  • the first calculation unit 804 is further configured to calculate the Morton code of the point in the point cloud
  • the first determining unit 801 is further configured to arrange the Morton codes of the points in the point cloud in a preset order, and determine the maximum value of the Morton code and the minimum value of the Morton code;
  • the first calculation unit 804 is further configured to calculate the difference between the maximum value of the Morton code and the minimum value of the Morton code, and to shift the obtained difference by N bits in a preset direction, Obtain the shifted difference; where N is a positive integer greater than or equal to 1;
  • the first dividing unit 807 is configured to divide the point cloud into the shifted difference space blocks when the shifted difference meets a preset range.
  • the first determining unit 801 is further configured to bit-shift the Morton code of the point in the point cloud by N bits in a preset direction; and in the point cloud, if some points are shifted If the following Morton code values are the same, it is determined that the partial points belong to the same space block.
  • the encoder 80 may also include a selecting unit 808, configured to select K points from the space block, and form a point set of the selected K points; where K is greater than or equal to A positive integer of 20;
  • the first determining unit 801 is configured to determine model parameters based on K points in the point set; wherein, the model parameters include a first model parameter and a second model parameter;
  • the first construction unit 802 is configured to construct the prediction model according to the first model parameter and the second model parameter.
  • the encoder 80 may further include a first obtaining unit 809 configured to obtain the first color component value and the second color component value of each point in the point set;
  • the first calculation unit 804 is further configured to use a first calculation submodel to calculate the first model parameter according to the first color component value and the second color component value of each point in the point set; and according to the The first model parameter is used to calculate the second model parameter using the second calculation sub-model.
  • the writing unit 806 is further configured to write the first model parameter and the second model parameter into the attribute bitstream.
  • the encoder 80 may further include a quantization unit 810, configured to perform quantization processing on the first model parameter and the second model parameter to obtain the quantized first model parameter and the quantized first model parameter.
  • the second model parameter configured to perform quantization processing on the first model parameter and the second model parameter to obtain the quantized first model parameter and the quantized first model parameter.
  • the writing unit 806 is further configured to write the quantized first model parameter and the quantized second model parameter into the attribute bitstream.
  • the writing unit 806 is further configured to write the first model parameter and the second model parameter corresponding to the first space block in the at least one space block into the attribute bit stream; and calculate the at least one space block.
  • the model parameter residual values of the remaining space block in one space block and the previous space block are sequentially written into the attribute bit stream; wherein, the at least one space block includes the first space block And the remaining space block.
  • the first calculation unit 804 is further configured to calculate the second correlation between the first color component and the second color component corresponding to the space block for the space block;
  • the first dividing unit 807 is further configured to, if the second correlation degree is less than the preset correlation degree threshold, right shift the Morton code of each point in the spatial block by N-1 bits to obtain two sub-space blocks;
  • the first calculation unit 804 is further configured to calculate a third degree of correlation between the first color component and the second color component corresponding to the two subspace blocks;
  • the first construction unit 802 is further configured to construct two sub-prediction models according to the two sub-space blocks if the third correlation is greater than the second correlation;
  • the first prediction unit 803 is further configured to use the two sub-prediction models and the first color component value to obtain the second color component prediction value of the to-be-coded point.
  • the shape of the space block includes at least one of the following: a cube shape, a rectangular parallelepiped shape, and an irregular shape.
  • a "unit” may be a part of a circuit, a part of a processor, a part of a program or software, etc., of course, it may also be a module, or it may also be non-modular.
  • the various components in this embodiment may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit.
  • the above-mentioned integrated unit can be realized in the form of hardware or software function module.
  • the integrated unit is implemented in the form of a software function module and is not sold or used as an independent product, it can be stored in a computer readable storage medium.
  • the technical solution of this embodiment is essentially or It is said that the part that contributes to the existing technology or all or part of the technical solution can be embodied in the form of a software product.
  • the computer software product is stored in a storage medium and includes several instructions to enable a computer device (which can It is a personal computer, a server, or a network device, etc.) or a processor (processor) that executes all or part of the steps of the method described in this embodiment.
  • the aforementioned storage media include: U disk, mobile hard disk, read only memory (Read Only Memory, ROM), random access memory (Random Access Memory, RAM), magnetic disk or optical disk and other media that can store program codes.
  • this embodiment provides a computer storage medium that stores a color component prediction program, and when the color component prediction program is executed by a first processor, the method described in any one of the foregoing embodiments is implemented.
  • FIG. 9 shows the specific hardware structure of the encoder 80 provided by the embodiment of the present application, which may include: a first communication interface 901, a first memory 902, and a first communication interface 901; Processor 903; the components are coupled together through the first bus system 904.
  • the first bus system 904 is used to implement connection and communication between these components.
  • the first bus system 904 also includes a power bus, a control bus, and a status signal bus.
  • various buses are marked as the first bus system 904 in FIG. 9. among them,
  • the first communication interface 901 is used for receiving and sending signals in the process of sending and receiving information with other external network elements;
  • the first memory 902 is configured to store a computer program that can run on the first processor 903;
  • the first processor 903 is configured to execute: when the computer program is running:
  • the first memory 902 in the embodiment of the present application may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memory.
  • the non-volatile memory can be read-only memory (Read-Only Memory, ROM), programmable read-only memory (Programmable ROM, PROM), erasable programmable read-only memory (Erasable PROM, EPROM), and electrically available Erase programmable read-only memory (Electrically EPROM, EEPROM) or flash memory.
  • the volatile memory may be random access memory (Random Access Memory, RAM), which is used as an external cache.
  • RAM static random access memory
  • DRAM dynamic random access memory
  • DRAM synchronous dynamic random access memory
  • DDRSDRAM Double Data Rate Synchronous Dynamic Random Access Memory
  • Enhanced SDRAM, ESDRAM Synchronous Link Dynamic Random Access Memory
  • Synchlink DRAM Synchronous Link Dynamic Random Access Memory
  • DRRAM Direct Rambus RAM
  • the first processor 903 may be an integrated circuit chip with signal processing capability. In the implementation process, the steps of the foregoing method can be completed by an integrated logic circuit of hardware in the first processor 903 or instructions in the form of software.
  • the above-mentioned first processor 903 may be a general-purpose processor, a digital signal processor (Digital Signal Processor, DSP), an application specific integrated circuit (ASIC), a ready-made programmable gate array (Field Programmable Gate Array, FPGA) Or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components.
  • DSP Digital Signal Processor
  • ASIC application specific integrated circuit
  • FPGA ready-made programmable gate array
  • the methods, steps, and logical block diagrams disclosed in the embodiments of the present application can be implemented or executed.
  • the general-purpose processor may be a microprocessor or the processor may also be any conventional processor or the like.
  • the steps of the method disclosed in the embodiments of the present application can be directly embodied as being executed and completed by a hardware decoding processor, or executed and completed by a combination of hardware and software modules in the decoding processor.
  • the software module can be located in a mature storage medium in the field, such as random access memory, flash memory, read-only memory, programmable read-only memory, or electrically erasable programmable memory, registers.
  • the storage medium is located in the first memory 902, and the first processor 903 reads the information in the first memory 902, and completes the steps of the foregoing method in combination with its hardware.
  • the embodiments described in this application can be implemented by hardware, software, firmware, middleware, microcode, or a combination thereof.
  • the processing unit can be implemented in one or more application specific integrated circuits (ASIC), digital signal processor (Digital Signal Processing, DSP), digital signal processing equipment (DSP Device, DSPD), programmable Logic Device (Programmable Logic Device, PLD), Field-Programmable Gate Array (Field-Programmable Gate Array, FPGA), general-purpose processors, controllers, microcontrollers, microprocessors, and others for performing the functions described in this application Electronic unit or its combination.
  • ASIC application specific integrated circuits
  • DSP Digital Signal Processing
  • DSP Device digital signal processing equipment
  • PLD programmable Logic Device
  • PLD programmable Logic Device
  • Field-Programmable Gate Array Field-Programmable Gate Array
  • FPGA Field-Programmable Gate Array
  • the technology described in this application can be implemented through modules (for example, procedures, functions, etc.) that perform the functions described in this
  • the first processor 903 is further configured to execute the method described in any one of the foregoing embodiments when the computer program is running.
  • This embodiment provides an encoder, which may include a first determination unit, a first construction unit, a first acquisition unit, a first prediction unit, a first calculation unit, and a transformation unit.
  • the first determining unit is configured to determine the spatial block where the point to be coded is located;
  • the first construction unit is configured to construct a prediction model according to the spatial block, and the prediction model is used to characterize the first color component and the second color component of the point to be coded.
  • the prediction relationship between the color components is configured to obtain the first color component value and the second color component value of the point to be coded; the first prediction unit is configured to use the prediction model and the first color component value to obtain The predicted value of the second color component of the point to be coded; the first calculation unit is configured to calculate the difference between the second color component value and the predicted value of the second color component, and use the obtained difference as the residual of the point to be coded; transform The unit is configured to perform RAHT transformation on the residuals of the points to be coded; in this way, one color component is used to predict another color component to obtain a predicted value, so as to calculate the predicted residual based on the actual value and the predicted value, which can remove the difference between the color components.
  • the correlation of effectively reduces coding bit overhead and can improve coding efficiency.
  • FIG. 10 shows a schematic diagram of the composition structure of a decoder 100 provided by an embodiment of the present application.
  • the decoder 100 may include a second determination unit 1001, a parsing unit 1002, a second construction unit 1003, a second prediction unit 1004, an inverse transform unit 1005, and a second calculation unit 1006, wherein,
  • the second determining unit 1001 is configured to determine the spatial block where the point to be decoded is located;
  • the analysis unit 1002 is configured to analyze the attribute bitstream to obtain the first color component value, the initial residual, and the first model parameter and the second model parameter corresponding to the spatial block of the point to be decoded;
  • the second construction unit 1003 is configured to construct a prediction model according to the first model parameters and the second model parameters; wherein, the prediction model is used to characterize the first color component and the second color of the point to be decoded The predictive relationship between the components;
  • the second prediction unit 1004 is configured to use the prediction model and the first color component value to obtain the second color component prediction value of the to-be-decoded point;
  • the inverse transform unit 1005 is configured to perform inverse RAHT transform on the parsed initial residual to obtain the residual of the point to be decoded;
  • the second calculation unit 1006 is configured to calculate the second color component reconstruction value of the to-be-decoded point according to the residual of the to-be-decoded point and the second color component predicted value.
  • the encoder 100 may further include a second dividing unit 1007 configured to spatially divide the point cloud to obtain at least one spatial block;
  • the second determining unit 1001 is configured to determine the spatial block where the point to be decoded is located from the at least one spatial block based on the geometric position of the point to be decoded.
  • the second determining unit 1001 is further configured to divide the point cloud into a plurality of point sets according to the spatial neighbor relationship between the points in the point cloud, and determine that each point is concentrated A first degree of correlation between the first color component and the second color component;
  • the second dividing unit 1007 is configured to spatially divide the point cloud according to the determined first degree of correlation to obtain the at least one spatial block.
  • the second calculation unit 1006 is further configured to calculate the Morton code of the point in the point cloud
  • the second determining unit 1001 is further configured to arrange Morton codes of points in the point cloud in a preset order, and determine the maximum value of the Morton code and the minimum value of the Morton code;
  • the second calculation unit 1006 is further configured to calculate the difference between the maximum value of the Morton code and the minimum value of the Morton code, and to shift the obtained difference by N bits in a preset direction, Obtain the shifted difference; where N is a positive integer greater than or equal to 1;
  • the second dividing unit 1007 is configured to divide the point cloud into the shifted difference space blocks when the shifted difference meets a preset range.
  • the second determining unit 1001 is further configured to bit-shift the Morton code of the point in the point cloud by N bits in a preset direction; and in the point cloud, if some points are shifted If the following Morton code values are the same, it is determined that the partial points belong to the same space block.
  • the encoder 100 may further include an inverse quantization unit 1008, configured to perform inverse quantization processing on the first model parameter and the second model parameter obtained by analysis to obtain the first model parameter and the The second model parameter.
  • an inverse quantization unit 1008 configured to perform inverse quantization processing on the first model parameter and the second model parameter obtained by analysis to obtain the first model parameter and the The second model parameter.
  • the analysis unit 1002 is further configured to obtain the first model parameter and the second model parameter corresponding to the first space block in the at least one space block, and the remaining space block corresponding to the at least one space block.
  • the residual value of the model parameter; and according to the first model parameter and the second model parameter corresponding to the first space block and the residual value of the model parameter, the first model parameter and the first model parameter corresponding to the remaining space block are obtained 2.
  • the shape of the space block includes at least one of the following: a cube shape, a rectangular parallelepiped shape, and an irregular shape.
  • a "unit” may be a part of a circuit, a part of a processor, a part of a program or software, etc., of course, it may also be a module, or it may also be non-modular.
  • the various components in this embodiment may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit.
  • the above-mentioned integrated unit can be realized in the form of hardware or software function module.
  • the integrated unit is implemented in the form of a software function module and is not sold or used as an independent product, it can be stored in a computer readable storage medium.
  • this embodiment provides a computer storage medium that stores a color component prediction program, and when the color component prediction program is executed by a second processor, the color component prediction program implements any of the foregoing embodiments. Methods.
  • FIG. 11 shows the specific hardware structure of the decoder 100 provided by an embodiment of the present application, which may include: a second communication interface 1101, a second memory 1102, and a second communication interface 1101; Processor 1103; the components are coupled together through the second bus system 1104.
  • the second bus system 1104 is used to implement connection and communication between these components.
  • the second bus system 1104 also includes a power bus, a control bus, and a status signal bus.
  • various buses are marked as the second bus system 1104 in FIG. 11. among them,
  • the second communication interface 1101 is used for receiving and sending signals in the process of sending and receiving information with other external network elements;
  • the second memory 1102 is configured to store a computer program that can run on the second processor 1103;
  • the second processor 1103 is configured to execute the following when running the computer program:
  • the reconstruction value of the second color component of the point to be decoded is calculated.
  • the second processor 1103 is further configured to execute the method described in any one of the foregoing embodiments when running the computer program.
  • This embodiment provides a decoder, which may include a second determination unit, a parsing unit, a second construction unit, a second prediction unit, an inverse transformation unit, and a second calculation unit.
  • the second determining unit is configured to determine the spatial block where the point to be decoded is located;
  • the parsing unit is configured to analyze the attribute bit stream to obtain the first color component value of the point to be decoded, the initial residual, and the corresponding spatial block The first model parameter and the second model parameter;
  • the second construction unit is configured to construct a prediction model according to the first model parameter and the second model parameter, and the prediction model is used to characterize the first color component and the second color component of the point to be decoded
  • the second prediction unit is configured to use the prediction model and the first color component value to obtain the second color component prediction value of the point to be decoded;
  • the inverse transform unit is configured to perform inverse RAHT transform on the parsed initial residual , Obtain the residual of the point to be decoded;
  • the method is applied to the encoder, by determining the spatial block where the point to be coded is located, and the first color component value and the second color component value of the code point; and constructing a prediction based on the spatial block A model, the prediction model is used to characterize the prediction relationship between the first color component and the second color component of the point to be coded; the prediction model and the first color component value are then used to obtain the second color component prediction value of the point to be coded; Finally, the difference between the second color component value and the predicted value of the second color component is calculated, and the obtained difference is used as the residual of the point to be coded, and the residual of the point to be coded is subjected to RAHT transformation; in this way, a color component pair is used The other color components are predicted to obtain the predicted value, so that the prediction residual is calculated according to the actual value and the predicted value.
  • the correlation between the color components can be removed, the coding bit overhead is effectively reduced, and the coding efficiency can be improved; this method also applies In the decoder, by determining the spatial block where the point to be decoded is located; analyzing the attribute bit stream to obtain the first color component value, the initial residual, and the first model parameter and the second model parameter corresponding to the spatial block of the point to be decoded ; According to the first model parameters and the second model parameters, construct a prediction model, which is used to characterize the prediction relationship between the first color component and the second color component of the point to be decoded; reuse the prediction model and the first color component Value, obtain the predicted value of the second color component of the point to be decoded; finally perform the inverse RAHT transformation on the parsed initial residual to obtain the residual of the point to be decoded; according to the residual of the point to be decoded and the predicted value of the second color component, The second color component reconstruction value of the point to be decoded is calculated; in this way, one color component is used to predict another color

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

本申请实施例公开了一种颜色分量预测方法、编码器、解码器及计算机存储介质,该方法应用于编码器,包括:确定待编码点所处的空间块,以及所述编码点的第一颜色分量值与第二颜色分量值;根据所述空间块,构造预测模型;其中,所述预测模型用于表征所述待编码点的第一颜色分量与第二颜色分量之间的预测关系;利用所述预测模型以及所述第一颜色分量值,获得所述待编码点的第二颜色分量预测值;计算所述第二颜色分量值与所述第二颜色分量预测值之间的差值,将得到的差值作为所述待编码点的残差,对所述待编码点的残差进行区域自适应分级变换RAHT变换。

Description

颜色分量预测方法、编码器、解码器及计算机存储介质 技术领域
本申请实施例涉及视频编解码技术领域,尤其涉及一种颜色分量预测方法、编码器、解码器及计算机存储介质。
背景技术
在基于几何的点云压缩(Geometry-based Point Cloud Compression,G-PCC)编码器框架中,点云的几何信息和每个点云所对应的属性信息是分开进行编码的。几何编码完成后,对几何信息进行重建,而属性信息的编码将依赖于重建的几何信息。
目前,属性信息编码主要针对颜色信息的编码。首先,将颜色信息从RGB颜色空间转换到YUV颜色空间。然后,利用重建的几何信息对点云重新着色,使得未编码的属性信息与重建的几何信息对应起来。在颜色信息编码中,主要有两种变换方法,一是依赖于细节层次(Level of Detail,LOD)划分的基于距离的提升变换,另一是直接进行的区域自适应分层变换(Region Adaptive Hierarchal Transform,RAHT),这两种方法都会将颜色信息从空间域转换到频域,通过变换得到高频系数和低频系数,最后对系数进行量化并编码,生成二进制码流。
然而,在RAHT变换之前,由于三个颜色分量(可以分别用Y、U、V表示)之间具有一定的相关性,导致在进行RAHT变换时,会增加编码的比特数,使得编码效率较差。
发明内容
本申请实施例提供一种颜色分量预测方法、编码器、解码器及计算机存储介质,能够去除RAHT变换中三个颜色分量之间的相关性,有效降低编码比特开销,从而提高编解码效率。
本申请实施例的技术方案可以如下实现:
第一方面,本申请实施例提供了一种颜色分量预测方法,应用于编码器,该方法包括:
确定待编码点所处的空间块,以及所述编码点的第一颜色分量值与第二颜色分量值;
根据所述空间块,构造预测模型;其中,预测模型用于表征待编码点的第一颜色分量与第二颜色分量之间的预测关系;
利用预测模型以及第一颜色分量值,获得待编码点的第二颜色分量预测值;
计算第二颜色分量值与第二颜色分量预测值之间的差值,将得到的差值作为待编码点的残差,对待编码点的残差进行区域自适应分级变换RAHT变换。
第二方面,本申请实施例提供了一种颜色分量预测方法,应用于解码器,该方法包括:
确定待解码点所处的空间块;
对属性比特流进行解析,得到待解码点的第一颜色分量值、初始残差以及所述空间块对应的第一模型参数和第二模型参数;
根据第一模型参数和第二模型参数,构造预测模型;其中,预测模型用于表征待解码点的第一颜色分量与第二颜色分量之间的预测关系;
利用预测模型以及第一颜色分量值,获得待解码点的第二颜色分量预测值;
对解析到的初始残差进行RAHT逆变换,得到待解码点的残差;
根据待解码点的残差和第二颜色分量预测值,计算得到待解码点的第二颜色分量重建值。
第三方面,本申请实施例提供了一种编码器,该编码器包括第一确定单元、第一构造单元、第一预测单元、第一计算单元和变换单元,其中,
第一确定单元,配置为确定待编码点所处的空间块,以及所述编码点的第一颜色分量值与第二颜色分量值;
第一构造单元,配置为根据所述空间块,构造预测模型;其中,预测模型用于表征待编码点的第一颜色分量与第二颜色分量之间的预测关系;
第一预测单元,配置为利用预测模型以及第一颜色分量值,获得待编码点的第二颜色分量预测值;
第一计算单元,配置为计算第二颜色分量值与第二颜色分量预测值之间的差值,将得到的差值作为 待编码点的残差;
变换单元,配置为对待编码点的残差进行RAHT变换。
第四方面,本申请实施例提供了一种解码器,该解码器包括第二确定单元、解析单元、第二构造单元、第二预测单元、逆变换单元和第二计算单元,其中,
第二确定单元,配置为确定待解码点所处的空间块;
解析单元,配置为对属性比特流进行解析,得到待解码点的第一颜色分量值、初始残差以及所述空间块对应的第一模型参数和第二模型参数;
第二构造单元,配置为根据第一模型参数和第二模型参数,构造预测模型;其中,预测模型用于表征待解码点的第一颜色分量与第二颜色分量之间的预测关系;
第二预测单元,配置为利用预测模型以及第一颜色分量值,获得待解码点的第二颜色分量预测值;
逆变换单元,配置为对解析到的初始残差进行RAHT逆变换,得到待解码点的残差;
第二计算单元,配置为根据待解码点的残差和第二颜色分量预测值,计算得到待解码点的第二颜色分量重建值。
第五方面,本申请实施例提供了一种编码器,该编码器包括第一存储器和第一处理器,其中,
第一存储器,用于存储能够在第一处理器上运行的计算机程序;
第一处理器,用于在运行计算机程序时,执行如第一方面所述的方法。
第六方面,本申请实施例提供了一种解码器,该解码器包括第二存储器和第二处理器,其中,
第二存储器,用于存储能够在第二处理器上运行的计算机程序;
第二处理器,用于在运行计算机程序时,执行如第二方面所述的方法。
第七方面,本申请实施例提供了一种计算机存储介质,该计算机存储介质存储有计算机程序,计算机程序被第一处理器执行时实现如第一方面所述的方法、或者被第二处理器执行时实现如第二方面所述的方法。
本申请实施例提供了一种颜色分量预测方法、编码器、解码器及计算机存储介质,该方法可以应用于编码器,通过确定待编码点所处的空间块,以及所述编码点的第一颜色分量值与第二颜色分量值;根据所述空间块,构造预测模型,该预测模型用于表征待编码点的第一颜色分量与第二颜色分量之间的预测关系;再利用预测模型以及第一颜色分量值,获得待编码点的第二颜色分量预测值;最后计算第二颜色分量值与第二颜色分量预测值之间的差值,将得到的差值作为待编码点的残差,对待编码点的残差进行RAHT变换;这样,利用一个颜色分量对另外的颜色分量进行预测以得到预测值,从而根据实际值和预测值来计算预测残差,可以去除颜色分量之间的相关性,有效降低了编码比特开销,能够提高编码效率;该方法还可以应用于解码器,通过确定待解码点所处的空间块;对属性比特流进行解析,得到待解码点的第一颜色分量值、初始残差以及空间块对应的第一模型参数和第二模型参数;根据第一模型参数和第二模型参数,构造预测模型,该预测模型用于表征待解码点的第一颜色分量与第二颜色分量之间的预测关系;再利用预测模型以及第一颜色分量值,获得待解码点的第二颜色分量预测值;最后对解析到的初始残差进行RAHT逆变换,得到待解码点的残差;根据待解码点的残差和第二颜色分量预测值,计算得到待解码点的第二颜色分量重建值;这样,利用一个颜色分量对另外的颜色分量进行预测以得到预测值,从而根据预测值和解析得到的预测残差进行属性值的重建,由于去除了颜色分量之间的相关性,有效降低了编码比特开销,从而提高了编解码效率。
附图说明
图1为相关技术方案提供的一种G-PCC编码的流程框图;
图2为相关技术方案提供的一种G-PCC解码的流程框图;
图3为相关技术方案提供的一种分层RAHT变换示意图;
图4为本申请实施例提供的一种颜色分量预测方法的流程示意图;
图5为本申请实施例提供的一种G-PCC编码的流程框图;
图6为本申请实施例提供的另一种颜色分量预测方法的流程示意图;
图7为本申请实施例提供的一种G-PCC解码的流程框图;
图8为本申请实施例提供的一种编码器的组成结构示意图;
图9为本申请实施例提供的一种编码器的具体硬件结构示意图;
图10为本申请实施例提供的一种解码器的组成结构示意图;
图11为本申请实施例提供的一种解码器的具体硬件结构示意图。
具体实施方式
为了能够更加详尽地了解本申请实施例的特点与技术内容,下面结合附图对本申请实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本申请实施例。
在本申请实施例中,在点云G-PCC编码器框架中,将输入三维图像模型的点云进行条带(slice)划分后,对每一个slice进行独立编码。
参见图1,其示出了相关技术方案提供的一种G-PCC编码的流程框图。如图1所示的G-PCC编码的流程框图中,应用于点云编码器,针对待编码的点云数据,首先通过slice划分,将点云数据划分为多个slice。在每一个slice中,点云的几何信息和每个点云所对应的属性信息是分开进行编码的。在几何编码过程中,对几何信息进行坐标转换,使点云全都包含在一个bounding box(包围盒)中,然后再进行量化,这一步量化主要起到缩放的作用,由于量化取整,使得一部分点云的几何信息相同,于是在基于参数来决定是否移除重复点,量化和移除重复点这一过程又被称为体素化过程。接着对bounding box进行八叉树划分。在基于八叉树的几何信息编码流程中,将包围盒八等分为8个子立方体,对非空的(包含点云中的点)的子立方体继续进行八等分,直到划分得到的叶子结点为1×1×1的单位立方体时停止划分,对叶子结点中的点进行算术编码,生成二进制的几何比特流,即几何码流。在基于三角面片集(triangle soup,trisoup)的几何信息编码过程中,同样也要先进行八叉树划分,但区别于基于八叉树的几何信息编码,该trisoup不需要将点云逐级划分到边长为1x1x1的单位立方体,而是划分到block(子块)边长为W时停止划分,基于每个block中点云的分布所形成的表面,得到该表面与block的十二条边所产生的至多十二个vertex(交点),对vertex进行算术编码(基于交点进行表面拟合),生成二进制的几何比特流,即几何码流。Vertex还用于在几何重建的过程的实现,而重建的集合信息在对点云的属性编码时使用。
在属性编码过程中,几何编码完成,对几何信息进行重建后,进行颜色转换,将颜色信息(即属性信息)从RGB颜色空间转换到YUV颜色空间。然后,利用重建的几何信息对点云重新着色,使得未编码的属性信息与重建的几何信息对应起来。属性编码主要针对颜色信息进行,在颜色信息编码过程中,主要有两种变换方法,一是依赖于细节层次(Level of Detail,LOD)划分的基于距离的提升变换,二是直接进行区域自适应分层变换(Region Adaptive Hierarchal Transform,RAHT)的变换,这两种方法都会将颜色信息从空间域转换到频域,通过变换得到高频系数和低频系数,最后对系数进行量化(即量化系数),最后,将经过八叉树划分及表面拟合的几何编码数据与量化系数处理属性编码数据进行slice合成后,依次编码每个block的vertex坐标(即算数编码),生成二进制的属性比特流,即属性码流。
参见图2,其示出了相关技术方案提供的一种G-PCC解码的流程框图。如图2所示的G-PCC解码的流程框图中,应用于点云解码器,针对所获取的二进制码流,首先对二进制码流中的几何比特流和属性比特流分别进行独立解码。在对几何比特流的解码时,通过算术解码-八叉树合成-表面拟合-重建几何-逆坐标转换,得到点云的几何信息;在对属性比特流的解码时,通过算术解码-反量化-基于LOD的提升逆变换或者基于RAHT的逆变换-逆颜色转换,得到点云的属性信息,基于几何信息和属性信息还原待编码的点云数据的三维图像模型。
图1所示的G-PCC编码的流程框图中,RAHT变换是对点云的属性信息进行编码的部分,通过Harr小波变换原理进行有损编码,一般适用于稀疏点云。具体来说,在RAHT变换之前,已经得到了点云的几何坐标信息。利用点的坐标信息可以得到对应于点云中每一点的莫顿码。莫顿编码也叫z-order code,因为其编码顺序按照空间z序。具体的计算莫顿码的具体方法描述如下所示,对于每一个分量用d比特二进制数表示的三维坐标,其三个坐标分量的表示通过以下实现:
Figure PCTCN2019109694-appb-000001
其中,x l,y l,z l∈{0,1}分别是x,y,z的最高位(l=1)到最低位(l=d)对应的二进制数值。莫顿码M是对x,y,z从最高位开始,依次交叉排列x l,y l,z l到最低位,M的计算公式如下所示:
Figure PCTCN2019109694-appb-000002
其中,m l'∈{0,1}分别是M的最高位(l'=1)到最低位(l'=3d)的值。在得到点云中每个点的莫顿码M后,将点云中的点按照莫顿码由小到大的顺序进行排列,并将每个点的权值w设为1。
RAHT变换是在对点云数据进行八叉树划分得到的层级结构基础上进行的,从八叉树的底层开始,分层进行变换。如图3所示,在八叉树划分结束后得到体素块1(即图3中三种颜色深度相间的几何体, 每个方块都代表点云中的点)。从最底层开始进行RAHT变换,以变换顺序xyz为例,如下图3所示先沿x方向进行RAHT变换。若x方向上存在相邻的体素块,则二者进行RAHT,得到相邻两点属性值的加权平均值(DC系数)与残差(AC系数)。其中,得到的DC系数作为父节点的体素块2的属性信息存在,并进行下一层的RAHT变换;而AC系数保留起来,用于最后的编码。若不存在相邻点,则将该体素块的属性值直接传递给第二层父节点。第二层RAHT变换时,沿y方向进行,若y方向上存在相邻体素块,二者进行RAHT,并得到相邻两点属性值的加权平均值(DC系数)与残差(AC系数)。之后,第三层RAHT变换沿z方向进行,并得到三种颜色深度相间的父节点体素块3作为八叉树中下一层的子节点,再沿x、y、z方向循环进行RAHT变换,直至整个点云只存在一个父节点为止。
在实际中进行点云中的点的遍历时,利用经过排序的点云的莫顿码进行,即通过莫顿码右移一位后的值是否相等可以判断两个子节点是否在一个父节点下。
对于相邻两点的属性值c 1,c 2具体的RAHT变换过程如下所示:
Figure PCTCN2019109694-appb-000003
Figure PCTCN2019109694-appb-000004
其中,w为DC系数所对应的权重,是计算得到的。DC系数为属性的加权平均值,AC系数为相邻两点的属性残差。
在本申请实施例中,RAHT变换的具体步骤如下:
(1)、将点云中的点的属性值作为第一层DC系数并将它们的权重全部设为1,开始进行RAHT变换。
(2)、这一层的DC系数和AC系数按照对应的索引填入下一层双亲层,即父节点。如果需要填入DC系数和AC系数,但若无AC系数,则可以不填AC系数。
(3)、按照莫顿码排序后的索引,遍历索引所对应的DC系数。
(4)、将所有DC系数对应的莫顿码右移一位,这时每个DC系数的莫顿码表示其父节点的莫顿码。
(5)、判断两个DC系数的莫顿码是否相同,若相同,则表示在相同父节点下,二者进行RAHT,将得到的DC系数填入下一层父节点的DC系数处、AC系数填入下一层最后的DC系数处并将两个DC系数加和的权重赋给父节点的DC系数;若不同,则将此DC系数和其权重直接填入下一层。
(6)、重复步骤(2)-(5),直至某一层只有一个DC系数为止。
(7)、最后,对DC系数进行量化,并对这一层的DC系数和AC系数属性值进行编码。
在属性值两两进行RAHT变换时,属性信息的三个颜色分量(可以分别用Y、U、V表示)是分别进行RAHT变换的计算的,三者之间相互独立、没有影响。
这样,首先根据最后得到的DC系数,将其作为父节点,可以对子节点进行上采样计算,得到子节点的预测属性值。具体过程如下:
Figure PCTCN2019109694-appb-000005
其中,d i表示相邻父节点i的中心点距离子节点的中心点的距离,a i表示父节点的属性值。
然后将得到预测属性值的子节点作为下一层的父节点,并对下一层的子节点进行上采样计算,直至计算得到最底层的属性预测值为止。最后,将得到的子节点的属性预测值和实际值做残差,对残差进行编码。
相应地,在图2所示的G-PCC解码的流程框图中,RAHT逆变换是对点云的属性信息进行解码的部分,具体与编码过程类似。在RAHT逆变换之前,先对点云中计算每个点莫顿码,得到每个点的莫顿码M后,将点云中的点按由小到大的顺序进行排列,并将每个点的权值设为1,RAHT逆过程仍是依照莫顿码排序后的顺序遍历点云中所有的点。
其中,由于RAHT变换是通过分层进行的,由底层开始,一层一层进行点云中相邻点的判断,依据权重对属性值进行RAHT变换。如此,RAHT逆变换则是由顶层开始,由上往下进行RAHT的逆变换;也就是说,在进行RAHT逆变换时,从顶层开始,依据每一层的莫顿码信息来进行相邻节点的判断,利用得到的权重信息和解码得到的属性信息进行RAHT逆变换。
然而,目前的解决方案是针对属性的三个颜色分量(可以分别用Y、U、V表示)所对应的三个通道分别进行RAHT变换,三者之间相互独立。由于在RAHT变换之前,这三个颜色分量之间具有一定 的相关性;导致在进行RAHT变换时,会增加编码的比特数,使得编码效率下降。
本申请实施例提供了一种颜色分量预测方法,该方法应用于编码器,通过确定待编码点所处的空间块,以及所述编码点的第一颜色分量值与第二颜色分量值;根据所述空间块,构造预测模型,该预测模型用于表征待编码点的第一颜色分量与第二颜色分量之间的预测关系;再利用预测模型以及第一颜色分量值,获得待编码点的第二颜色分量预测值;最后计算第二颜色分量值与第二颜色分量预测值之间的差值,将得到的差值作为待编码点的残差,对待编码点的残差进行RAHT变换;这样,利用一个颜色分量对另外的颜色分量进行预测以得到预测值,从而根据实际值和预测值来计算预测残差,可以去除颜色分量之间的相关性,有效降低了编码比特开销,能够提高编码效率;该方法还应用于解码器,通过确定待解码点所处的空间块;对属性比特流进行解析,得到待解码点的第一颜色分量值、初始残差以及空间块对应的第一模型参数和第二模型参数;根据第一模型参数和第二模型参数,构造预测模型,该预测模型用于表征待解码点的第一颜色分量与第二颜色分量之间的预测关系;再利用预测模型以及第一颜色分量值,获得待解码点的第二颜色分量预测值;最后对解析到的初始残差进行RAHT逆变换,得到待解码点的残差;根据待解码点的残差和第二颜色分量预测值,计算得到待解码点的第二颜色分量重建值;这样,利用一个颜色分量对另外的颜色分量进行预测以得到预测值,从而根据预测值和解析得到的预测残差进行属性值的重建,由于去除了颜色分量之间的相关性,有效降低了编码比特开销,从而提高了编解码效率。
下面将结合附图对本申请各实施例进行详细说明。
参见图4,其示出了本申请实施例提供的一种颜色分量预测方法的流程示意图,该方法应用于编码器(也可以称为点云编码器),该方法可以包括:
S401:确定待编码点所处的空间块,以及所述编码点的第一颜色分量值与第二颜色分量值;
S402:根据所述空间块,构造预测模型;其中,所述预测模型用于表征所述待编码点的第一颜色分量与第二颜色分量之间的预测关系;
需要说明的是,待编码点表示点云中待编码对象的点云数据。通过对点云进行空间划分,可以得到多个空间块。从这多个空间块中,可以确定出待编码点所处的空间块,以便后续根据该空间块构造预测模型,从而实现颜色分量间的预测。
还需要说明的是,针对空间内每一个待编码点,可以用第一颜色分量、第二颜色分量和第三颜色分量来表示待编码点的三种颜色属性。其中,这三种颜色属性可以利用Y、U、V表示;具体地,第一颜色分量可以用Y表示,第二颜色分量可以用U表示,第三颜色分量可以用V表示;或者第一颜色分量可以用Y表示,第二颜色分量可以用V表示,第三颜色分量可以用U表示;本申请实施例不作具体限定。
另外,这三种颜色属性可以利用R、G、B表示;具体地,第一颜色分量可以用R表示,第二颜色分量可以用G表示,第三颜色分量可以用B表示;或者第一颜色分量可以用R表示,第二颜色分量可以用B表示,第三颜色分量可以用G表示;本申请实施例也不作具体限定。
这样,根据待编码点所处的空间块,可以构造预测模型,该预测模型可以表征待编码点的第一颜色分量与第二颜色分量之间的预测关系。也就是说,利用该预测模型,可以根据待编码点的第一颜色分量来预测待编码点的第二颜色分量。具体地,假定第一颜色分量用Y表示,第二颜色分量用U表示,那么该预测模型可以根据待编码点的Y分量来预测U分量,即本申请实施例的预测方法适用于利用Y分量对U分量的预测;假定第一颜色分量用Y表示,第二颜色分量用V表示,那么该预测模型也可以根据待编码点的Y分量来预测V分量,即本申请实施例的预测方法也适用于利用Y分量对V分量的预测。
S403:利用所述预测模型以及所述第一颜色分量值,获得所述待编码点的第二颜色分量预测值;
需要说明的是,在构造预测模型之后,为了预测待编码点的第二颜色分量,这时候还需要获取待编码点的第一颜色分量值;如此,根据所获取的待编码点的第一颜色分量值,通过预测模型可以得到待编码点的第二颜色分量预测值。
还需要说明的是,如果预测模型用于实现根据待编码点的Y分量来预测U分量,那么所获取的第一颜色分量值为Y分量值,第二颜色分量值为U分量值,如此根据预测模型和Y分量值,可以得到待编码点的U分量预测值,进而能够根据U分量值和U分量预测值来计算残差;如果预测模型用于实现根据待编码点的Y分量来预测V分量,那么所获取的第一颜色分量值为Y分量值,第二颜色分量值为V分量值,如此根据预测模型和Y分量值,可以得到待编码点的V分量预测值,进而能够根据V分量值和V分量预测值来计算残差。
S404:计算所述第二颜色分量值与所述第二颜色分量预测值之间的差值,将得到的差值作为所述待编码点的残差,对所述待编码点的残差进行区域自适应分级变换RAHT变换。
需要说明的是,在得到待编码点的第二颜色分量预测值之后,可以根据待编码点的第二颜色分量值 (实际值)与第二颜色分量预测值之间的差值,以得到待编码点的残差,然后根据待编码点的残差进行RAHT变换。
这样,本申请实施例可以对点云的属性信息进行无损预测,并且在获得相同的图像编码质量的情况下,有效降低编码比特开销,从而提升了编码效率。其中,图像编码质量可以使用客观质量评价准则,比如峰值信噪比(Peak Signal to Noise Ratio,PSNR),也可以使用主观质量评价准则,比如平均主观意见分(Mean Opinion Score,MOS)。
进一步地,在进行RAHT变换之后,还需要对待编码点的残差进行编码,以写入码流中。因此,在一些实施例中,在对所述待编码点的残差进行RAHT变换之后,该方法还可以包括:
对所述待编码点的残差进行编码,写入属性比特流。
需要说明的是,码流可以包括几何比特流和属性比特流。其中,几何比特流中包括有点云的几何信息,比如位置坐标信息等;属性比特流中包括有点云的属性信息,比如三种颜色信息等。如此,在进行RAHT变换之后,还需要对待编码点的残差进行编码,写入属性比特流;然后再由编码器侧传输到解码器侧,在解码器侧对该属性比特流进行解析,以便于解码器侧获取待编码点的残差。
参见图5,其示出了本申请实施例提供的一种G-PCC编码的流程框图。如图5所示,与相关技术方案所示的编码框图相比,在RAHT变换之前,增加了属性颜色通道间预测变换的部分。本申请实施例的预测方法主要应用于该部分,以实现颜色通道之间的属性预测。这样,在RAHT变换之前,利用一个颜色分量对另外的颜色分量进行预测以得到预测值,去除了三个颜色通道之间的相关性,从而能够提高编码效率。
本申请实施例提供了一种颜色分量预测方法,该方法可以应用于编码器,通过确定待编码点所处的空间块,以及所述编码点的第一颜色分量值与第二颜色分量值;根据所述空间块,构造预测模型,该预测模型用于表征待编码点的第一颜色分量与第二颜色分量之间的预测关系;再利用预测模型以及第一颜色分量值,获得待编码点的第二颜色分量预测值;最后计算第二颜色分量值与第二颜色分量预测值之间的差值,将得到的差值作为待编码点的残差,对待编码点的残差进行RAHT变换;这样,利用一个颜色分量对另外的颜色分量进行预测以得到预测值,从而根据实际值和预测值来计算预测残差,可以去除颜色分量之间的相关性,有效降低了编码比特开销,能够提高编码效率。
进一步地,空间块可以是通过对点云进行空间划分得到。因此,在一些实施例中,对于S401来说,所述确定待编码点所处的空间块,可以包括:
S401-a:对点云进行空间划分,获得至少一个空间块;
需要说明的是,由于RAHT的编码过程是根据莫顿码沿着z、y、x方向进行RAHT变换,而三个颜色分量(比如Y分量、U分量和V分量)之间距离越相近的点,其相关性越高;基于此,可以对点云进行空间划分,从而能够得到至少一个空间块。
在一些实施例中,可以根据点与点之间的空间相邻关系将点云划分成多个空间块。因此,对于S401-a来说,所述对点云进行空间划分,获得至少一个空间块,可以包括:
根据所述点云中点与点之间的空间相邻关系,将所述点云划分为多个点集,确定每一个点集中第一颜色分量与第二颜色分量之间的第一相关度;
根据确定的第一相关度对所述点云进行空间划分,得到所述至少一个空间块。
也就是说,可以根据点云中点与点之间的空间相邻关系,可以将点云划分为多个点集,从而能够确定出每一个点集中第一颜色分量与第二颜色分量之间的第一相关度,进而可以将点云划分成颜色分量之间相关性较高的空间块。
具体地,可以是根据每一个点集中Y分量与U分量之间的第一相关度来对点云进行空间划分,或者也可以是根据每一个点集中Y分量与V分量之间的第一相关度来对点云进行空间划分;由于颜色分量之间距离越相近的点相关性越高,如此根据颜色分量之间的第一相关度进行空间划分,能够得到至少一个空间块。
在一些实施例中,可以根据点云中点的莫顿码将点云划分成多个空间块。因此,对于S401-a来说,所述对点云进行空间划分,获得至少一个空间块,包括:
计算所述点云中点的莫顿码;
将所述点云中点的莫顿码按照预设顺序排列,确定所述莫顿码的最大值和所述莫顿码的最小值;
计算所述莫顿码的最大值和所述莫顿码的最小值之间的差值,对得到的差值向预设方向进行比特移N位,得到移位后的差值;其中,N为大于或等于1的正整数;
当所述移位后的差值满足预设范围时,将所述点云划分为所述移位后的差值个空间块。
需要说明的是,预设顺序可以是升序,也可以是降序;在本申请实施例中,预设顺序优选为升序排列。另外,预设方向可以是向右移位,也可以是向左移位;在本申请实施例中,预设方向优选为向右移 位,即对得到的差值进行比特右移N位。
需要说明的是,在点云中,点可以是点云中的所有点,也可以是点云中的部分点,这些点在空间上相对集中。这样,对于空间块的划分,可以计算这些点的莫顿码并将计算得到的莫顿码按升序排列,即将得到的莫顿码按照从小到大的顺序进行排列;然后确定出莫顿码的最大值和莫顿码的最小值,进而计算得到所述莫顿码的最大值和所述莫顿码的最小值之间的差值(可以用delta表示)。
通过对delta比特进行右移,当delta比特右移N位之后,得到移位后的delta,可以使得移位后的delta满足预设范围,这时候可以将点云划分为移位后的delta个空间块。其中,delta比特右移N位,可以看作是莫顿码的最大值比特右移N位,莫顿码的最小值比特右移N位,然后两者进行差值计算,所得到的差值即delta比特右移N位。
另外,预设范围表示点云所划分的空间块数量所需要满足的范围。这里,预设范围可以是16<delta≤32,也可以是8<delta≤16,本申请实施例不作具体限定。
进一步地,在所述计算所述点云中点的莫顿码之后,该方法还可以包括:
对所述点云中点的莫顿码向预设方向进行比特移N位;
在所述点云中,若部分点移位后的莫顿码值相同,则确定所述部分点属于同一个空间块。
需要说明的是,预设方向优选为向右移位,即将点云中点的莫顿码进行比特右移N位,这样,如果这些点中部分点移位后的莫顿码值相同,那么可以确定出该部分点属于同一个空间块,即可以将右移后莫顿码值相同的点标记为“位于同一个空间块内”。
S401-b:基于所述待编码点的几何位置,从所述至少一个空间块中确定所述待编码点所处的空间块。
需要说明的是,通过对点云进行空间划分,可以得到至少一个空间块;这样根据待编码点的几何位置,可以从这至少一个空间块中确定出待编码点所处的空间块,便于后续根据该空间块构建预测模型。
还需要说明的是,空间块的形状至少包括下述至少一种:正方体形状、长方体形状和不规则体形状。
其中,空间块可以是将点云划分成三维空间中的一个长方体,该长方体的大小为a×b×c;其中,a、b、c的取值可以相等,也可以不相等;这里,当a、b、c的取值相等时,即将正方体看作一个特殊的长方体。
此外,空间块还可以是颜色分量间相关性较强的不规则体形状的空间块,比如三角体或者多边体,同样也可以用作去除属性颜色的相关性,以得到第二颜色分量的预测残差。
进一步地,在确定出待编码点的空间块之后,可以从该空间块中选取部分点来组成点集,该点集用于构造预测模型。因此,在一些实施例中,对于402来说,所述根据所述空间块,构造预测模型,可以包括:
从所述空间块中选取K个点,将所选取的K个点组成点集;其中,K为大于或等于20的正整数;
基于所述点集中的K个点,确定模型参数;其中,所述模型参数包括第一模型参数和第二模型参数;
根据所述第一模型参数和所述第二模型参数,构造所述预测模型。
需要说明的是,在该空间块内,可以从该空间块所包含的点中选取K个点,并将选取的K个点组成点集;这里,K的取值可以为大于或等于20的正整数,但是本申请实施例不作具体限定。
示例性地,根据莫顿码的顺序,在该空间块内可以每k(100<k<500)个点中选取一个点,如果空间块内所包含的点数过少,可以均匀地选取20个点;使得每个空间块所选取的点数不少于20个点。假定点集用V表示,针对每一个空间块对应的点集V i{i=0,1,...,n}表示第i空间块内所选取点的集合,这里n表示空间块的数量。
这样,在将选取的这些点组成点集之后,可以根据点集内这些点的颜色属性值(比如第一颜色分量值、第二颜色分量值或第三颜色分量值)来确定第一模型参数和第二模型参数,然后根据第一模型参数和第二模型参数构造出预测模型。
进一步地,在一些实施例中,所述基于所述点集中的K个点,确定模型参数,可以包括:
获取所述点集中每一个点的第一颜色分量值和第二颜色分量值;
根据所述点集中每一个点的第一颜色分量值和第二颜色分量值,利用第一计算子模型计算所述第一模型参数;
根据所述第一模型参数,利用第二计算子模型计算所述第二模型参数。
需要说明的是,构建预测模型,可以看作是拟合直线。即在确定出第一模型参数和第二模型参数之后,根据第一模型参数和第二模型参可以得到拟合直线。下面将以利用最小二乘法拟合直线为例进行详细描述,具体过程如下:
首先,针对点集中的任意一个点(x i,y i),坐标x i表示任意一个点的第一颜色分量值(用Y分量值 表示),坐标y i表示任意一个点的第二颜色分量值(用U分量值表示),如此根据Y分量值和U分量值所得到的拟合直线为y=a+bx。
其次,对于点集中的任意一个点(x i,y i),误差为d i=y-(a+bx i),那么当
Figure PCTCN2019109694-appb-000006
取最小值时,该拟合直线的拟合度最高。这样,对于a、b分别求取一阶偏导,
Figure PCTCN2019109694-appb-000007
Figure PCTCN2019109694-appb-000008
再次,令
Figure PCTCN2019109694-appb-000009
Figure PCTCN2019109694-appb-000010
那么将式(5)和式(6)进行联立求解,可以得到
Figure PCTCN2019109694-appb-000011
Figure PCTCN2019109694-appb-000012
最后,式(7)用于表示用于计算第一模型参数的第一计算子模型,式(8)用于表示用于计算第二模型参数的第二计算子模型;这样,通过第一计算子模型可以得到第一模型参数b,通过第二计算子模型可以得到第二模型参数a,如此可以得到拟合直线,即预测模型。
这样,在得到Y分量值和U分量值之间的预测模型之后,可以根据该预测模型利用Y分量来预测U分量,从而得到U分量的预测值;然后将实际值和预测值作残差,并将得到的残差替换掉原先的属性值,再进行之后的RAHT变换。
还需要说明的是,针对构建预测模型即拟合直线来说,在从空间块中选取出点集之后,除了可以利用最小二乘法的方式来拟合直线之外,还可以利用不同与最小二乘法的方式来拟合直线,比如梯度下降法或者高斯牛顿法;除此之外,还可以利用点集中这些点的颜色属性值来拟合一个分段直线或者曲线,从而得到预测模型;然后将预测模型中涉及的模型参数写入属性比特流中。
进一步地,在一些实施例中,对于405来说,在所述对所述待编码点的残差进行RAHT变换之后,该方法还可以包括:
将所述第一模型参数和所述第二模型参数写入属性比特流。
需要说明的是,在确定出第一模型参数和第二模型参数之后,可以将第一模型参数和第二模型参数写入属性比特流,然后由编码器侧传输到解码器侧,在解码器侧对该属性比特流进行解析,以便于解码器侧只需要获取第一模型参数和第二模型参数,从而能够提高编码效率。
进一步地,在确定出第一模型参数和第二模型参数之后,还可以对第一模型参数和第二模型参数做进一步修改。其中,可以对第一模型参数和第二模型参数进行量化处理,然后再写入属性比特流;或者,也可以只是将第一个空间块的模型参数(包括第一模型参数和第二模型参数)写入属性比特流,而剩余空间块的模型参数修改为与第一个空间块相比的模型参数残差值,然后将该残差值依次写入属性比特流。
可选地,在一些实施例中,将所述第一模型参数和所述第二模型参数写入属性比特流,可以包括:
对所述第一模型参数和所述第二模型参数进行量化处理,得到量化后的第一模型参数和量化后的第二模型参数;
将量化后的第一模型参数和量化后的第二模型参数写入属性比特流。
需要说明的是,如果在编码器侧对第一模型参数和第二模型参数进行量化处理,那么在解码器侧对属性比特流解析之后,还需要对第一模型参数和第二模型参数进行反量化处理。
可选地,在一些实施例中,所述将所述第一模型参数和所述第二模型参数写入属性比特流,可以包括:
将所述至少一个空间块中第一个空间块对应的第一模型参数和第二模型参数写入属性比特流;
计算所述至少一个空间块中剩余空间块与前一个空间块的模型参数残差值,将所述模型参数残差值依次写入属性比特流。
需要说明的是,至少一个空间块包括有第一个空间块和剩余空间块。对于第一模型参数和第二模型参数来说,如果在编码器侧是首先对第一个空间块的模型参数(包括第一模型参数和第二模型参数)写入属性比特流,而剩余空间块的模型参数修改为与第一个空间块相比的模型参数残差值,然后将该残差值依次写入属性比特流;那么在解码器侧对属性比特流解析之后,还需要根据解析得到的模型参数残差值来确定出剩余空间块的模型参数。
进一步地,在一些实施例中,该方法还可以包括:
针对所述空间块,计算所述空间块对应的第一颜色分量与第二颜色分量之间的第二相关度;
若第二相关度小于预设相关度阈值时,将所述空间块内每一个点的莫顿码右移N-1位,得到两个子空间块;
计算所述两个子空间块对应的第一颜色分量与第二颜色分量之间的第三相关度;
若所述第三相关度大于所述第二相关度,则根据所述两个子空间块,构建两个子预测模型;
利用所述两个子预测模型以及所述第一颜色分量值,获得所述待编码点的第二颜色分量预测值。
需要说明的是,在点云中,划分空间块的时候,根据空间块中所选取的点集进行颜色通道之间的相关性计算,得到第二相关度,即父空间块的相关性。当计算得到的第二相关度较低时,对于该空间块中的点,将莫顿码的右移位数减一(假定右移位数为N,那么右移位数减一为N-1),这时候可以将该空间块划分为两个子空间块。然后对这两个子空间块进行颜色通道之间的相关性计算,得到第三相关度,即两个子空间块的相关性。如果两个子空间块的相关性明显大于父空间块的相关性,那么可以利用将该空间块划分为两个子空间块的方式,即采用两个子空间块来分别进行颜色通道间的预测,也即根据两个子空间块构建两个子预测模型,以根据第一颜色分量预测第二颜色分量;否则,如果两个子空间块的相关性小于或等于父空间块的相关性,那么可以利用父空间块进行预测,即执行图4所示的预测方法流程。
本申请实施例中,可以改善G-PCC属性编码部分的编码性能。在基本不影响编码性能的前提下,例如不影响属性PSNR的情况下,能够降低属性部分的第一颜色通道(用Y表示)、第二颜色通道(用U表示)和第三颜色通道(用V表示)的比特率。这里,PSNR是一种图像编码质量的客观评价准则,而且PSNR越大,图像的编码质量越好。另外,BD-rate(Bjontegaard-Delta rate)可以用来衡量编码性能的好坏,具体地,如表1所示,如果BD-rate为负值,那么表示性能变好;而且若BD-rate的绝对值越大,则性能的增益就越大。
表1
Figure PCTCN2019109694-appb-000013
本实施例提供了一种颜色分量预测方法,该方法应用于编码器。通过上述实施例对前述实施例的具体实现进行详细阐述,从中可以看出,利用一个颜色分量对另外的颜色分量进行预测以得到预测值,从而根据实际值和预测值来计算预测残差,可以去除颜色分量之间的相关性,有效降低了编码比特开销,能够提高编码效率。
参见图6,其示出了本申请实施例提供的另一种颜色分量预测方法的流程示意图,该方法应用于解码器(也可以称为点云解码器),该方法可以包括:
S601:确定待解码点所处的空间块;
需要说明的是,待解码点表示点云中待解码对象的点云数据。通过对点云进行空间划分,可以得到多个空间块。从这多个空间块中,可以确定出待解码点所处的空间块,以便后续根据该空间块构造预测模型,从而实现颜色分量间的预测。
还需要说明的是,针对空间内每一个待解码点,可以用第一颜色分量、第二颜色分量和第三颜色分量来表示待解码点的三种颜色属性。其中,这三种颜色属性可以利用Y、U、V表示;具体地,第一颜色分量可以用Y表示,第二颜色分量可以用U表示,第三颜色分量可以用V表示;或者第一颜色分量可以用Y表示,第二颜色分量可以用V表示,第三颜色分量可以用U表示;本申请实施例不作具体限定。
另外,这三种颜色属性可以利用R、G、B表示;具体地,第一颜色分量可以用R表示,第二颜色分量可以用G表示,第三颜色分量可以用B表示;或者第一颜色分量可以用R表示,第二颜色分量可 以用B表示,第三颜色分量可以用G表示;本申请实施例也不作具体限定。
S602:对属性比特流进行解析,得到所述待解码点的第一颜色分量值、初始残差以及所述空间块对应的第一模型参数和第二模型参数;
需要说明的是,当码流由编码器侧传输到解码器侧时,可以由解码器侧对码流进行解析处理。这里,码流可以包括几何比特流和属性比特流;其中,几何比特流中包括有点云的几何信息,在解码器侧通过对几何比特流进行解析,可以得到点云的几何信息,比如待解码点的位置坐标等;属性比特流中包括有点云的属性信息,在解码器侧通过对属性比特流进行解析,可以得到点云的属性信息;比如待解码点的第一颜色分量值、初始残差以及该空间块对应的第一模型参数和第二模型参数。
S603:根据所述第一模型参数和第二模型参数,构造预测模型;其中,所述预测模型用于表征所述待解码点的第一颜色分量与第二颜色分量之间的预测关系;
需要说明的是,根据第一模型参数和第二模型参数,可以构造出预测模型,该预测模型可以表征待解码点的第一颜色分量与第二颜色分量之间的预测关系。
也就是说,利用该预测模型,可以根据待解码点的第一颜色分量来预测待解码点的第二颜色分量。具体地,假定第一颜色分量用Y表示,第二颜色分量用U表示,那么该预测模型可以根据待解码点的Y分量来预测U分量,即本申请实施例的预测方法适用于利用Y分量对U分量的预测;假定第一颜色分量用Y表示,第二颜色分量用V表示,那么该预测模型也可以根据待解码点的Y分量来预测V分量,即本申请实施例的预测方法也适用于利用Y分量对V分量的预测。
S604:利用所述预测模型以及所述第一颜色分量值,获得所述待解码点的第二颜色分量预测值;
需要说明的是,在构造预测模型之后,为了预测待解码点的第二颜色分量,这时候还需要获取待解码点的第一颜色分量值;如此,根据所获取的待解码点的第一颜色分量值,通过预测模型可以得到待解码点的第二颜色分量预测值。
还需要说明的是,如果预测模型用于实现根据待解码点的Y分量来预测U分量,那么所获取的第一颜色分量值为Y分量值,第二颜色分量值为U分量值,如此根据预测模型和Y分量值,可以得到待解码点的U分量预测值;或者,如果预测模型用于实现根据待解码点的Y分量来预测V分量,那么所获取的第一颜色分量值为Y分量值,第二颜色分量值为V分量值,如此根据预测模型和Y分量值,可以得到待解码点的V分量预测值。
S605:对解析到的初始残差进行RAHT逆变换,得到所述待解码点的残差;
S606:根据所述待解码点的残差和所述第二颜色分量预测值,计算得到所述待解码点的第二颜色分量重建值。
需要说明的是,在解析得到初始残差之后,还需要对初始残差进行RAHT逆变换,从而能够得到待解码点的残差。
这样,在得到待解码点的残差和第二颜色分量预测值之后,将待解码点的残差和第二颜色分量预测值进行叠加,可以得到待解码点的第二颜色分量重建值。
参见图7,其示出了本申请实施例提供的一种G-PCC解码的流程框图。如图7所示,与相关技术方案所示的解码框图相比,在RAHT逆变换之后,增加了属性颜色通道间逆预测变换的部分。本申请实施例的预测方法主要应用于该部分,以实现颜色通道之间的属性预测。这样,在RAHT逆变换之后,利用一个颜色分量对另外的颜色分量进行预测以得到预测值,可以对点云的属性信息进行无损预测,去除了三个颜色通道之间的相关性,并且在获得相同的图像编码质量的情况下,有效降低比特开销,从而提升了解码效率。其中,图像解码质量可以使用客观质量评价准则,比如峰值信噪比(Peak Signal to Noise Ratio,PSNR),也可以使用主观质量评价准则,比如平均主观意见分(Mean Opinion Score,MOS)。
本申请实施例提供了一种颜色分量预测方法,该方法可以应用于解码器,通过确定待解码点所处的空间块;对属性比特流进行解析,得到待解码点的第一颜色分量值、初始残差以及空间块对应的第一模型参数和第二模型参数;根据第一模型参数和第二模型参数,构造预测模型,该预测模型用于表征待解码点的第一颜色分量与第二颜色分量之间的预测关系;再利用预测模型以及第一颜色分量值,获得待解码点的第二颜色分量预测值;最后对解析到的初始残差进行RAHT逆变换,得到待解码点的残差;根据待解码点的残差和第二颜色分量预测值,计算得到待解码点的第二颜色分量重建值;这样,利用一个颜色分量对另外的颜色分量进行预测以得到预测值,从而根据预测值和解析得到的预测残差进行属性值的重建,由于去除了颜色分量之间的相关性,从而提高了解码效率。
进一步地,在解码器侧,空间块也可以是通过对点云进行空间划分得到的。因此,在一些实施例中,因此,在一些实施例中,对于S601来说,所述确定待解码点所处的空间块,可以包括:
S601-a:对点云进行空间划分,获得至少一个空间块;
需要说明的是,由于RAHT的编码过程是根据莫顿码沿着z、y、x方向进行RAHT变换,而RAHT 的解码过程是根据莫顿码沿着z、y、x方向进行RAHT逆变换,三个颜色分量(比如Y分量、U分量和V分量)之间距离越相近的点,其相关性越高;基于此,可以对点云进行空间划分,从而能够得到至少一个空间块。
在一些实施例中,可以根据点与点之间的空间相邻关系将点云划分成多个空间块。因此,对于S601-a来说,所述对点云进行空间划分,获得至少一个空间块,可以包括:
根据所述点云中点与点之间的空间相邻关系,将所述点云划分为多个点集,确定每一个点集中第一颜色分量与第二颜色分量之间的第一相关度;
根据确定的第一相关度对所述点云进行空间划分,得到所述至少一个空间块。
也就是说,可以根据点云中点与点之间的空间相邻关系,可以将点云划分为多个点集,从而能够确定出每一个点集中第一颜色分量与第二颜色分量之间的第一相关度,进而可以将点云划分成颜色分量之间相关性较高的空间块。
具体地,可以是根据每一个点集中Y分量与U分量之间的第一相关度来对点云进行空间划分,或者也可以是根据每一个点集中Y分量与V分量之间的第一相关度来对点云进行空间划分;由于颜色分量之间距离越相近的点相关性越高,如此根据颜色分量之间的第一相关度进行空间划分,能够得到至少一个空间块。
在一些实施例中,可以根据点云中点的莫顿码将点云划分成多个空间块。因此,对于S601-a来说,所述对点云进行空间划分,获得至少一个空间块,包括:
计算所述点云中点的莫顿码;
将所述点云中点的莫顿码按照预设顺序排列,确定所述莫顿码的最大值和所述莫顿码的最小值;
计算所述莫顿码的最大值和所述莫顿码的最小值之间的差值,对得到的差值向预设方向进行比特移N位,得到移位后的差值;其中,N为大于或等于1的正整数;
当所述移位后的差值满足预设范围时,将所述点云划分为所述移位后的差值个空间块。
需要说明的是,预设顺序可以是升序,也可以是降序;在本申请实施例中,预设顺序优选为升序排列。另外,预设方向可以是向右移位,也可以是向左移位;在本申请实施例中,预设方向优选为向右移位,即对得到的差值进行比特右移N位。
需要说明的是,在点云中,点可以是点云中的所有点,也可以是点云中的部分点,这些点在空间上相对集中。这样,对于空间块的划分,可以计算这些点的莫顿码并将计算得到的莫顿码按升序排列,即将得到的莫顿码按照从小到大的顺序进行排列;然后确定出莫顿码的最大值和莫顿码的最小值,进而计算得到所述莫顿码的最大值和所述莫顿码的最小值之间的差值(可以用delta表示)。
通过对delta比特进行右移,当delta比特右移N位之后,得到移位后的delta,可以使得移位后的delta满足预设范围,这时候可以将点云划分为移位后的delta个空间块。其中,delta比特右移N位,可以看作是莫顿码的最大值比特右移N位,莫顿码的最小值比特右移N位,然后两者进行差值计算,所得到的差值即delta比特右移N位。
另外,预设范围表示点云所划分的空间块数量所需要满足的范围。这里,预设范围可以是16<delta≤32,也可以是8<delta≤16,本申请实施例不作具体限定。
进一步地,在所述计算所述点云中点的莫顿码之后,该方法还可以包括:
对所述点云中点的莫顿码向预设方向进行比特移N位;
在所述点云中,若部分点移位后的莫顿码值相同,则确定所述部分点属于同一个空间块。
需要说明的是,预设方向优选为向右移位,即将点云中点的莫顿码进行比特右移N位,这样,如果这些点中部分点移位后的莫顿码值相同,那么可以确定出该部分点属于同一个空间块,即可以将右移后莫顿码值相同的点标记为“位于同一个空间块内”。
S601-b:基于所述待解码点的几何位置,从所述至少一个空间块中确定所述待解码点所处的空间块。
需要说明的是,通过对点云进行空间划分,可以得到至少一个空间块;这样根据待解码点的几何位置,可以从这至少一个空间块中确定出待解码点所处的空间块,便于后续根据该空间块构建预测模型。
还需要说明的是,空间块的形状至少包括下述至少一种:正方体形状、长方体形状和不规则体形状。
其中,空间块可以是将点云划分成三维空间中的一个长方体,该长方体的大小为a×b×c;其中,a、b、c的取值可以相等,也可以不相等;这里,当a、b、c的取值相等时,即将正方体看作一个特殊的长方体。
此外,空间块还可以是颜色分量间相关性较强的不规则体形状的空间块,比如三角体或者多边体,同样也可以用作去除属性颜色的相关性,以提高解码效率。
进一步地,对于第一模型参数和第二模型参数,在对属性比特流进行解析之后,还需要对第一模型参数和第二模型参数进行反量化处理;或者,还可以是通过解析得到第一个空间块的模型参数(包括第 一模型参数和第二模型参数)和剩余空间块的模型参数残差值,然后根据该模型参数残差值来获得剩余空间块的模型参数。
可选地,在一些实施例中,在所述对属性比特流进行解析之后,该方法还可以包括:
对解析得到的第一模型参数和第二模型参数进行反量化处理,得到所述第一模型参数和所述第二模型参数。
需要说明的是,如果在编码器侧对第一模型参数和第二模型参数进行量化处理,那么在解码器侧对属性比特流解析之后,还需要对第一模型参数和第二模型参数进行反量化处理,以得到第一模型参数和第二模型参数。
可选地,在一些实施例中,在所述对属性比特流进行解析之后,该方法还可以包括:
获取所述至少一个空间块中第一个空间块对应的第一模型参数和第二模型参数以及所述至少一个空间块中剩余空间块对应的模型参数残差值;
根据所述第一个空间块对应的第一模型参数和第二模型参数以及所述模型参数残差值,得到所述剩余空间块对应的第一模型参数和第二模型参数。
需要说明的是,至少一个空间块包括有第一个空间块和剩余空间块。对于第一模型参数和第二模型参数来说,如果在编码器侧是首先对第一个空间块的模型参数(包括第一模型参数和第二模型参数)写入属性比特流,而剩余空间块的模型参数修改为与第一个空间块相比的模型参数残差值,然后将该残差值依次写入属性比特流;那么在解码器侧对属性比特流解析之后,还需要根据解析得到的模型参数残差值来确定出剩余空间块的模型参数(包括第一模型参数和第二模型参数)。
本申请实施例中,在点云中,划分空间块的时候,根据空间块中所选取的点集进行颜色通道之间的相关性计算,得到第二相关度,即父空间块的相关性。当计算得到的第二相关度较低时,对于该空间块中的点,将莫顿码的右移位数减一(假定右移位数为N,那么右移位数减一为N-1),这时候可以将该空间块划分为两个子空间块。然后对这两个子空间块进行颜色通道之间的相关性计算,得到第三相关度,即两个子空间块的相关性。如果两个子空间块的相关性明显大于父空间块的相关性,那么可以利用将该空间块划分为两个子空间块的方式,即采用两个子空间块来分别进行颜色通道间的预测,也即根据两个子空间块构建两个子预测模型,以根据第一颜色分量预测第二颜色分量;否则,如果两个子空间块的相关性小于或等于父空间块的相关性,那么可以利用父空间块进行预测,即执行图4所示的预测方法流程。
本申请实施例在于RAHT变换下通过颜色通道之间的相关性来进行颜色通道间的属性预测。在编码器侧,需要进行空间块的划分和直线拟合,将计算得到的第一模型参数和第二模型参数写入码流,传到解码器。在解码器侧,只需要进行空间块的划分,然后根据解析得到的对应空间块的第一模型参数和第二模型参数以及第一颜色分量值来预测第二颜色分量值,最后将预测得到的预测值和解析及RAHT逆变换之后得到的残差值进行叠加,即得到所需要的属性重建值。这样,在基本不影响性能的前提下,能够降低属性部分的第一颜色通道(用Y表示)、第二颜色通道(用U表示)和第三颜色通道(用V表示)的比特率。
本实施例提供了一种颜色分量预测方法,该方法应用于解码器。通过上述实施例对前述实施例的具体实现进行详细阐述,从中可以看出,利用一个颜色分量对另外的颜色分量进行预测以得到预测值,从而根据预测值和解析得到的预测残差进行属性值的重建,由于去除了颜色分量之间的相关性,从而提高了解码效率。
基于前述实施例相同的发明构思,参见图8,其示出了本申请实施例提供的一种编码器80的组成结构示意图。该编码器80可以包括第一确定单元801、第一构造单元802、第一预测单元803、第一计算单元804和变换单元805,其中,
所述第一确定单元801,配置为确定待编码点所处的空间块,以及所述编码点的第一颜色分量值与第二颜色分量值;
所述第一构造单元802,配置为根据所述空间块,构造预测模型;其中,所述预测模型用于表征所述待编码点的第一颜色分量与第二颜色分量之间的预测关系;
所述第一预测单元803,配置为利用所述预测模型以及所述第一颜色分量值,获得所述待编码点的第二颜色分量预测值;
所述第一计算单元804,配置为计算所述第二颜色分量值与所述第二颜色分量预测值之间的差值,将得到的差值作为所述待编码点的残差;
所述变换单元805,配置为对所述待编码点的残差进行RAHT变换。
在上述方案中,参见图8,编码器80还可以包括写入单元806,配置为对所述待编码点的残差进行编码,写入属性比特流。
在上述方案中,参见图8,编码器80还可以包括第一划分单元807,配置为对点云进行空间划分, 获得至少一个空间块;
所述第一确定单元801,配置为基于所述待编码点的几何位置,从所述至少一个空间块中确定所述待编码点所处的空间块。
在上述方案中,所述第一确定单元801,还配置为根据所述点云中点与点之间的空间相邻关系,将所述点云划分为多个点集,确定每一个点集中第一颜色分量与第二颜色分量之间的第一相关度;
所述第一划分单元807,配置为根据确定的第一相关度对所述点云进行空间划分,得到所述至少一个空间块。
在上述方案中,所述第一计算单元804,还配置为计算所述点云中点的莫顿码;
所述第一确定单元801,还配置为将所述点云中点的莫顿码按照预设顺序排列,确定所述莫顿码的最大值和所述莫顿码的最小值;
所述第一计算单元804,还配置为计算所述莫顿码的最大值和所述莫顿码的最小值之间的差值,对得到的差值向预设方向进行比特移N位,得到移位后的差值;其中,N为大于或等于1的正整数;
所述第一划分单元807,配置为当所述移位后的差值满足预设范围时,将所述点云划分为所述移位后的差值个空间块。
在上述方案中,所述第一确定单元801,还配置为对所述点云中点的莫顿码向预设方向进行比特移N位;以及在所述点云中,若部分点移位后的莫顿码值相同,则确定所述部分点属于同一个空间块。
在上述方案中,参见图8,编码器80还可以包括选取单元808,配置为从所述空间块中选取K个点,将所选取的K个点组成点集;其中,K为大于或等于20的正整数;
所述第一确定单元801,配置为基于所述点集中的K个点,确定模型参数;其中,所述模型参数包括第一模型参数和第二模型参数;
所述第一构造单元802,配置为根据所述第一模型参数和所述第二模型参数,构造所述预测模型。
在上述方案中,参见图8,编码器80还可以包括第一获取单元809,配置为获取所述点集中每一个点的第一颜色分量值和第二颜色分量值;
所述第一计算单元804,还配置为根据所述点集中每一个点的第一颜色分量值和第二颜色分量值,利用第一计算子模型计算所述第一模型参数;以及根据所述第一模型参数,利用第二计算子模型计算所述第二模型参数。
在上述方案中,所述写入单元806,还配置为将所述第一模型参数和所述第二模型参数写入属性比特流。
在上述方案中,参见图8,编码器80还可以包括量化单元810,配置为对所述第一模型参数和所述第二模型参数进行量化处理,得到量化后的第一模型参数和量化后的第二模型参数;
所述写入单元806,还配置为将量化后的第一模型参数和量化后的第二模型参数写入属性比特流。
在上述方案中,所述写入单元806,还配置为将所述至少一个空间块中第一个空间块对应的第一模型参数和第二模型参数写入属性比特流;以及计算所述至少一个空间块中剩余空间块与前一个空间块的模型参数残差值,将所述模型参数残差值依次写入属性比特流;其中,所述至少一个空间块包括所述第一个空间块和所述剩余空间块。
在上述方案中,所述第一计算单元804,还配置为针对所述空间块,计算所述空间块对应的第一颜色分量与第二颜色分量之间的第二相关度;
所述第一划分单元807,还配置为若第二相关度小于预设相关度阈值时,将所述空间块内每一个点的莫顿码右移N-1位,得到两个子空间块;
所述第一计算单元804,还配置为计算所述两个子空间块对应的第一颜色分量与第二颜色分量之间的第三相关度;
所述第一构造单元802,还配置为若所述第三相关度大于所述第二相关度,则根据所述两个子空间块,构建两个子预测模型;
所述第一预测单元803,还配置为利用所述两个子预测模型以及所述第一颜色分量值,获得所述待编码点的第二颜色分量预测值。
在上述方案中,所述空间块的形状至少包括下述至少一种:正方体形状、长方体形状和不规则体形状。
可以理解地,在本实施例中,“单元”可以是部分电路、部分处理器、部分程序或软件等等,当然也可以是模块,还可以是非模块化的。而且在本实施例中的各组成部分可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
所述集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储 在一个计算机可读取存储介质中,基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或processor(处理器)执行本实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
因此,本实施例提供了一种计算机存储介质,该计算机存储介质存储有颜色分量预测程序,所述颜色分量预测程序被第一处理器执行时实现前述实施例中任一项所述的方法。
基于上述编码器80的组成以及计算机存储介质,参见图9,其示出了本申请实施例提供的编码器80的具体硬件结构,可以包括:第一通信接口901、第一存储器902和第一处理器903;各个组件通过第一总线系统904耦合在一起。可理解,第一总线系统904用于实现这些组件之间的连接通信。第一总线系统904除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图9中将各种总线都标为第一总线系统904。其中,
第一通信接口901,用于在与其他外部网元之间进行收发信息过程中,信号的接收和发送;
第一存储器902,用于存储能够在第一处理器903上运行的计算机程序;
第一处理器903,用于在运行所述计算机程序时,执行:
确定待编码点所处的空间块,以及所述编码点的第一颜色分量值与第二颜色分量值;
根据所述空间块,构造预测模型;其中,所述预测模型用于表征所述待编码点的第一颜色分量与第二颜色分量之间的预测关系;
利用所述预测模型以及所述第一颜色分量值,获得所述待编码点的第二颜色分量预测值;
计算所述第二颜色分量值与所述第二颜色分量预测值之间的差值,将得到的差值作为所述待编码点的残差,对所述待编码点的残差进行区域自适应分级变换RAHT变换。
可以理解,本申请实施例中的第一存储器902可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data Rate SDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DRRAM)。本申请描述的系统和方法的第一存储器902旨在包括但不限于这些和任意其它适合类型的存储器。
而第一处理器903可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过第一处理器903中的硬件的集成逻辑电路或者软件形式的指令完成。上述的第一处理器903可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于第一存储器902,第一处理器903读取第一存储器902中的信息,结合其硬件完成上述方法的步骤。
可以理解的是,本申请描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(Application Specific Integrated Circuits,ASIC)、数字信号处理器(Digital Signal Processing,DSP)、数字信号处理设备(DSP Device,DSPD)、可编程逻辑设备(Programmable Logic Device,PLD)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、通用处理器、控制器、微控制器、微处理器、用于执行本申请所述功能的其它电子单元或其组合中。对于软件实现,可通过执行本申请所述功能的模块(例如过程、函数等)来实现本申请所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。
可选地,作为另一个实施例,第一处理器903还配置为在运行所述计算机程序时,执行前述实施例 中任一项所述的方法。
本实施例提供了一种编码器,该编码器可以包括第一确定单元、第一构造单元、第一获取单元、第一预测单元、第一计算单元和变换单元。其中,第一确定单元配置为确定待编码点所处的空间块;第一构造单元配置为根据所述空间块构造预测模型,该预测模型用于表征待编码点的第一颜色分量与第二颜色分量之间的预测关系;第一获取单元配置为获取待编码点的第一颜色分量值和第二颜色分量值;第一预测单元配置为利用预测模型以及所述第一颜色分量值,获得待编码点的第二颜色分量预测值;第一计算单元配置为计算第二颜色分量值与第二颜色分量预测值之间的差值,将得到的差值作为待编码点的残差;变换单元配置为对待编码点的残差进行RAHT变换;这样,利用一个颜色分量对另外的颜色分量进行预测以得到预测值,从而根据实际值和预测值来计算预测残差,可以去除颜色分量之间的相关性,有效降低了编码比特开销,能够提高编码效率。
基于前述实施例相同的发明构思,参见图10,其示出了本申请实施例提供的一种解码器100的组成结构示意图。该解码器100可以包括第二确定单元1001、解析单元1002、第二构造单元1003、第二预测单元1004、逆变换单元1005和第二计算单元1006,其中,
所述第二确定单元1001,配置为确定待解码点所处的空间块;
所述解析单元1002,配置为对属性比特流进行解析,得到所述待解码点的第一颜色分量值、初始残差以及所述空间块对应的第一模型参数和第二模型参数;
所述第二构造单元1003,配置为根据所述第一模型参数和第二模型参数,构造预测模型;其中,所述预测模型用于表征所述待解码点的第一颜色分量与第二颜色分量之间的预测关系;
所述第二预测单元1004,配置为利用所述预测模型以及所述第一颜色分量值,获得所述待解码点的第二颜色分量预测值;
所述逆变换单元1005,配置为对解析到的初始残差进行RAHT逆变换,得到所述待解码点的残差;
所述第二计算单元1006,配置为根据所述待解码点的残差和所述第二颜色分量预测值,计算得到所述待解码点的第二颜色分量重建值。
在上述方案中,参见图10,编码器100还可以包括第二划分单元1007,配置为对点云进行空间划分,获得至少一个空间块;
所述第二确定单元1001,配置为基于所述待解码点的几何位置,从所述至少一个空间块中确定所述待解码点所处的空间块。
在上述方案中,所述第二确定单元1001,还配置为根据所述点云中点与点之间的空间相邻关系,将所述点云划分为多个点集,确定每一个点集中第一颜色分量与第二颜色分量之间的第一相关度;
所述第二划分单元1007,配置为根据确定的第一相关度对所述点云进行空间划分,得到所述至少一个空间块。
在上述方案中,所述第二计算单元1006,还配置为计算所述点云中点的莫顿码;
所述第二确定单元1001,还配置为将所述点云中点的莫顿码按照预设顺序排列,确定所述莫顿码的最大值和所述莫顿码的最小值;
所述第二计算单元1006,还配置为计算所述莫顿码的最大值和所述莫顿码的最小值之间的差值,对得到的差值向预设方向进行比特移N位,得到移位后的差值;其中,N为大于或等于1的正整数;
所述第二划分单元1007,配置为当所述移位后的差值满足预设范围时,将所述点云划分为所述移位后的差值个空间块。
在上述方案中,所述第二确定单元1001,还配置为对所述点云中点的莫顿码向预设方向进行比特移N位;以及在所述点云中,若部分点移位后的莫顿码值相同,则确定所述部分点属于同一个空间块。
在上述方案中,参见图10,编码器100还可以包括反量化单元1008,配置为对解析得到的第一模型参数和第二模型参数进行反量化处理,得到所述第一模型参数和所述第二模型参数。
在上述方案中,所述解析单元1002,还配置为获取所述至少一个空间块中第一个空间块对应的第一模型参数和第二模型参数以及所述至少一个空间块中剩余空间块对应的模型参数残差值;以及根据所述第一个空间块对应的第一模型参数和第二模型参数以及所述模型参数残差值,得到所述剩余空间块对应的第一模型参数和第二模型参数。
在上述方案中,所述空间块的形状至少包括下述至少一种:正方体形状、长方体形状和不规则体形状。
可以理解地,在本实施例中,“单元”可以是部分电路、部分处理器、部分程序或软件等等,当然也可以是模块,还可以是非模块化的。而且在本实施例中的各组成部分可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以 采用硬件的形式实现,也可以采用软件功能模块的形式实现。
所述集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本实施例提供了一种计算机存储介质,该计算机存储介质存储有颜色分量预测程序,所述颜色分量预测程序被第二处理器执行时实现前述实施例中任一项所述的方法。
基于上述解码器100的组成以及计算机存储介质,参见图11,其示出了本申请实施例提供的解码器100的具体硬件结构,可以包括:第二通信接口1101、第二存储器1102和第二处理器1103;各个组件通过第二总线系统1104耦合在一起。可理解,第二总线系统1104用于实现这些组件之间的连接通信。第二总线系统1104除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图11中将各种总线都标为第二总线系统1104。其中,
第二通信接口1101,用于在与其他外部网元之间进行收发信息过程中,信号的接收和发送;
第二存储器1102,用于存储能够在第二处理器1103上运行的计算机程序;
第二处理器1103,用于在运行所述计算机程序时,执行:
确定待解码点所处的空间块;
对属性比特流进行解析,得到所述待解码点的第一颜色分量值、初始残差以及所述空间块对应的第一模型参数和第二模型参数;
根据所述第一模型参数和第二模型参数,构造预测模型;其中,所述预测模型用于表征所述待解码点的第一颜色分量与第二颜色分量之间的预测关系;
利用所述预测模型以及所述第一颜色分量值,获得所述待解码点的第二颜色分量预测值;
对解析到的初始残差进行RAHT逆变换,得到所述待解码点的残差;
根据所述待解码点的残差和所述第二颜色分量预测值,计算得到所述待解码点的第二颜色分量重建值。
可选地,作为另一个实施例,第二处理器1103还配置为在运行所述计算机程序时,执行前述实施例中任一项所述的方法。
可以理解,第二存储器1102与第一存储器902的硬件功能类似,第二处理器1103与第一处理器903的硬件功能类似;这里不再详述。
本实施例提供了一种解码器,该解码器可以包括第二确定单元、解析单元、第二构造单元、第二预测单元、逆变换单元和第二计算单元。其中,第二确定单元配置为确定待解码点所处的空间块;解析单元配置为对属性比特流进行解析,得到待解码点的第一颜色分量值、初始残差以及所述空间块对应的第一模型参数和第二模型参数;第二构造单元配置为根据第一模型参数和第二模型参数,构造预测模型,该预测模型用于表征待解码点的第一颜色分量与第二颜色分量之间的预测关系;第二预测单元配置为利用预测模型以及第一颜色分量值,获得待解码点的第二颜色分量预测值;逆变换单元配置为对解析到的初始残差进行RAHT逆变换,得到待解码点的残差;第二计算单元配置为根据待解码点的残差和第二颜色分量预测值,计算得到待解码点的第二颜色分量重建值;这样,利用一个颜色分量对另外的颜色分量进行预测以得到预测值,从而根据预测值和解析得到的预测残差进行属性值的重建,由于去除了颜色分量之间的相关性,从而提高了解码效率。
需要说明的是,在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本申请所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。
本申请所提供的几个产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。
本申请所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
工业实用性
本申请实施例中,该方法应用于编码器,通过确定待编码点所处的空间块,以及所述编码点的第一颜色分量值与第二颜色分量值;根据所述空间块,构造预测模型,该预测模型用于表征待编码点的第一颜色分量与第二颜色分量之间的预测关系;再利用预测模型以及第一颜色分量值,获得待编码点的第二颜色分量预测值;最后计算第二颜色分量值与第二颜色分量预测值之间的差值,将得到的差值作为待编码点的残差,对待编码点的残差进行RAHT变换;这样,利用一个颜色分量对另外的颜色分量进行预测以得到预测值,从而根据实际值和预测值来计算预测残差,可以去除颜色分量之间的相关性,有效降低了编码比特开销,能够提高编码效率;该方法还应用于解码器,通过确定待解码点所处的空间块;对属性比特流进行解析,得到待解码点的第一颜色分量值、初始残差以及空间块对应的第一模型参数和第二模型参数;根据第一模型参数和第二模型参数,构造预测模型,该预测模型用于表征待解码点的第一颜色分量与第二颜色分量之间的预测关系;再利用预测模型以及第一颜色分量值,获得待解码点的第二颜色分量预测值;最后对解析到的初始残差进行RAHT逆变换,得到待解码点的残差;根据待解码点的残差和第二颜色分量预测值,计算得到待解码点的第二颜色分量重建值;这样,利用一个颜色分量对另外的颜色分量进行预测以得到预测值,从而根据预测值和解析得到的预测残差进行属性值的重建,由于去除了颜色分量之间的相关性,有效降低了编码比特开销,从而提高了编解码效率。

Claims (26)

  1. 一种颜色分量预测方法,应用于编码器,所述方法包括:
    确定待编码点所处的空间块,以及所述编码点的第一颜色分量值与第二颜色分量值;
    根据所述空间块,构造预测模型;其中,所述预测模型用于表征所述待编码点的第一颜色分量与第二颜色分量之间的预测关系;
    利用所述预测模型以及所述第一颜色分量值,获得所述待编码点的第二颜色分量预测值;
    计算所述第二颜色分量值与所述第二颜色分量预测值之间的差值,将得到的差值作为所述待编码点的残差,对所述待编码点的残差进行区域自适应分级变换RAHT变换。
  2. 根据权利要求1所述的方法,其中,在所述对所述待编码点的残差进行RAHT变换之后,所述方法还包括:
    对所述待编码点的残差进行编码,写入属性比特流。
  3. 根据权利要求1所述的方法,其中,所述确定待编码点所处的空间块,包括:
    对点云进行空间划分,获得至少一个空间块;
    基于所述待编码点的几何位置,从所述至少一个空间块中确定所述待编码点所处的空间块。
  4. 根据权利要求3所述的方法,其中,所述对点云进行空间划分,获得至少一个空间块,包括:
    根据所述点云中点与点之间的空间相邻关系,将所述点云划分为多个点集,确定每一个点集中第一颜色分量与第二颜色分量之间的第一相关度;
    根据确定的第一相关度对所述点云进行空间划分,得到所述至少一个空间块。
  5. 根据权利要求3所述的方法,其中,所述对点云进行空间划分,获得至少一个空间块,包括:
    计算所述点云中点的莫顿码;
    将所述点云中点的莫顿码按照预设顺序排列,确定所述莫顿码的最大值和所述莫顿码的最小值;
    计算所述莫顿码的最大值和所述莫顿码的最小值之间的差值,对得到的差值向预设方向进行比特移N位,得到移位后的差值;其中,N为大于或等于1的正整数;
    当所述移位后的差值满足预设范围时,将所述点云划分为所述移位后的差值个空间块。
  6. 根据权利要求5所述的方法,其中,在所述计算所述点云中点的莫顿码之后,所述方法还包括:
    对所述点云中点的莫顿码向预设方向进行比特移N位;
    在所述点云中,若部分点移位后的莫顿码值相同,则确定所述部分点属于同一个空间块。
  7. 根据权利要求1至6任一项所述的方法,其中,所述根据所述空间块,构造预测模型,包括:
    从所述空间块中选取K个点,将所选取的K个点组成点集;其中,K为大于或等于20的正整数;
    基于所述点集中的K个点,确定模型参数;其中,所述模型参数包括第一模型参数和第二模型参数;
    根据所述第一模型参数和所述第二模型参数,构造所述预测模型。
  8. 根据权利要求7所述的方法,其中,所述基于所述点集中的K个点,确定模型参数,包括:
    获取所述点集中每一个点的第一颜色分量值和第二颜色分量值;
    根据所述点集中每一个点的第一颜色分量值和第二颜色分量值,利用第一计算子模型计算所述第一模型参数;
    根据所述第一模型参数,利用第二计算子模型计算所述第二模型参数。
  9. 根据权利要求7所述的方法,其中,在所述对所述待编码点的残差进行RAHT变换之后,所述方法还包括:
    将所述第一模型参数和所述第二模型参数写入属性比特流。
  10. 根据权利要求9所述的方法,其中,所述将所述第一模型参数和所述第二模型参数写入属性比特流,包括:
    对所述第一模型参数和所述第二模型参数进行量化处理,得到量化后的第一模型参数和量化后的第二模型参数;
    将量化后的第一模型参数和量化后的第二模型参数写入属性比特流。
  11. 根据权利要求9所述的方法,其中,所述将所述第一模型参数和所述第二模型参数写入属性比特流,包括:
    将所述至少一个空间块中第一个空间块对应的第一模型参数和第二模型参数写入属性比特流;
    计算所述至少一个空间块中剩余空间块与前一个空间块的模型参数残差值,将所述模型参数残差值依次写入属性比特流;其中,所述至少一个空间块包括所述第一个空间块和所述剩余空间块。
  12. 根据权利要求1所述的方法,其中,所述方法还包括:
    针对所述空间块,计算所述空间块对应的第一颜色分量与第二颜色分量之间的第二相关度;
    若第二相关度小于预设相关度阈值时,将所述空间块内每一个点的莫顿码右移N-1位,得到两个子空间块;
    计算所述两个子空间块对应的第一颜色分量与第二颜色分量之间的第三相关度;
    若所述第三相关度大于所述第二相关度,则根据所述两个子空间块,构建两个子预测模型;
    利用所述两个子预测模型以及所述第一颜色分量值,获得所述待编码点的第二颜色分量预测值。
  13. 根据权利要求1至12任一项所述的方法,其中,所述空间块的形状至少包括下述至少一种:正方体形状、长方体形状和不规则体形状。
  14. 一种颜色分量预测方法,应用于解码器,所述方法包括:
    确定待解码点所处的空间块;
    对属性比特流进行解析,得到所述待解码点的第一颜色分量值、初始残差以及所述空间块对应的第一模型参数和第二模型参数;
    根据所述第一模型参数和第二模型参数,构造预测模型;其中,所述预测模型用于表征所述待解码点的第一颜色分量与第二颜色分量之间的预测关系;
    利用所述预测模型以及所述第一颜色分量值,获得所述待解码点的第二颜色分量预测值;
    对解析到的初始残差进行RAHT逆变换,得到所述待解码点的残差;
    根据所述待解码点的残差和所述第二颜色分量预测值,计算得到所述待解码点的第二颜色分量重建值。
  15. 根据权利要求14所述的方法,其中,所述确定待解码点所处的空间块,包括:
    对点云进行空间划分,获得至少一个空间块;
    基于所述待解码点的几何位置,从所述至少一个空间块中确定所述待解码点所处的空间块。
  16. 根据权利要求15所述的方法,其中,所述对点云进行空间划分,获得至少一个空间块,包括:
    根据所述点云中点与点之间的空间相邻关系,将所述点云划分为多个点集,确定每一个点集中第一颜色分量与第二颜色分量之间的第一相关度;
    根据确定的第一相关度对所述点云进行空间划分,得到所述至少一个空间块。
  17. 根据权利要求15所述的方法,其中,所述对点云进行空间划分,获得至少一个空间块,包括:
    计算所述点云中点的莫顿码;
    将所述点云中点的莫顿码按照预设顺序排列,确定所述莫顿码的最大值和所述莫顿码的最小值;
    计算所述莫顿码的最大值和所述莫顿码的最小值之间的差值,对得到的差值向预设方向进行比特移N位,得到移位后的差值;其中,N为大于或等于1的正整数;
    当所述移位后的差值满足预设范围时,将所述点云划分为所述移位后的差值个空间块。
  18. 根据权利要求17所述的方法,其中,在所述计算所述点云中点的莫顿码之后,所述方法还包括:
    对所述点云中点的莫顿码向预设方向进行比特移N位;
    在所述点云中,若部分点移位后的莫顿码值相同,则确定所述部分点属于同一个空间块。
  19. 根据权利要求14所述的方法,其中,在所述对属性比特流进行解析之后,所述方法还包括:
    对解析得到的第一模型参数和第二模型参数进行反量化处理,得到所述第一模型参数和所述第二模型参数。
  20. 根据权利要求14所述的方法,其中,在所述对属性比特流进行解析之后,所述方法还包括:
    获取所述至少一个空间块中第一个空间块对应的第一模型参数和第二模型参数以及所述至少一个空间块中剩余空间块对应的模型参数残差值;
    根据所述第一个空间块对应的第一模型参数和第二模型参数以及所述模型参数残差值,得到所述剩余空间块对应的第一模型参数和第二模型参数。
  21. 根据权利要求14至20任一项所述的方法,其中,所述空间块的形状至少包括下述至少一种:正方体形状、长方体形状和不规则体形状。
  22. 一种编码器,所述编码器包括第一确定单元、第一构造单元、第一预测单元、第一计算单元和变换单元,其中,
    所述第一确定单元,配置为确定待编码点所处的空间块,以及所述编码点的第一颜色分量值与第二颜色分量值;
    所述第一构造单元,配置为根据所述空间块,构造预测模型;其中,所述预测模型用于表征所述待编码点的第一颜色分量与第二颜色分量之间的预测关系;
    所述第一预测单元,配置为利用所述预测模型以及所述第一颜色分量值,获得所述待编码点的第二颜色分量预测值;
    所述第一计算单元,配置为计算所述第二颜色分量值与所述第二颜色分量预测值之间的差值,将得到的差值作为所述待编码点的残差;
    所述变换单元,配置为对所述待编码点的残差进行RAHT变换。
  23. 一种解码器,所述解码器包括第二确定单元、解析单元、第二构造单元、第二预测单元、逆变换单元和第二计算单元,其中,
    所述第二确定单元,配置为确定待解码点所处的空间块;
    所述解析单元,配置为对属性比特流进行解析,得到所述待解码点的第一颜色分量值、初始残差以及所述空间块对应的第一模型参数和第二模型参数;
    所述第二构造单元,配置为根据所述第一模型参数和第二模型参数,构造预测模型;其中,所述预测模型用于表征所述待解码点的第一颜色分量与第二颜色分量之间的预测关系;
    所述第二预测单元,配置为利用所述预测模型以及所述第一颜色分量值,获得所述待解码点的第二颜色分量预测值;
    所述逆变换单元,配置为对解析到的初始残差进行RAHT逆变换,得到所述待解码点的残差;
    所述第二计算单元,配置为根据所述待解码点的残差和所述第二颜色分量预测值,计算得到所述待解码点的第二颜色分量重建值。
  24. 一种编码器,所述编码器包括第一存储器和第一处理器,其中,
    所述第一存储器,用于存储能够在所述第一处理器上运行的计算机程序;
    所述第一处理器,用于在运行所述计算机程序时,执行如权利要求1至13任一项所述的方法。
  25. 一种解码器,所述解码器包括第二存储器和第二处理器,其中,
    所述第二存储器,用于存储能够在所述第二处理器上运行的计算机程序;
    所述第二处理器,用于在运行所述计算机程序时,执行如权利要求14至21任一项所述的方法。
  26. 一种计算机存储介质,其中,所述计算机存储介质存储有计算机程序,所述计算机程序被第一处理器执行时实现如权利要求1至13任一项所述的方法、或者被第二处理器执行时实现如权利要求14至21任一项所述的方法。
PCT/CN2019/109694 2019-09-30 2019-09-30 颜色分量预测方法、编码器、解码器及计算机存储介质 WO2021062771A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201980097731.3A CN114009014A (zh) 2019-09-30 2019-09-30 颜色分量预测方法、编码器、解码器及计算机存储介质
PCT/CN2019/109694 WO2021062771A1 (zh) 2019-09-30 2019-09-30 颜色分量预测方法、编码器、解码器及计算机存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/109694 WO2021062771A1 (zh) 2019-09-30 2019-09-30 颜色分量预测方法、编码器、解码器及计算机存储介质

Publications (1)

Publication Number Publication Date
WO2021062771A1 true WO2021062771A1 (zh) 2021-04-08

Family

ID=75336356

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/109694 WO2021062771A1 (zh) 2019-09-30 2019-09-30 颜色分量预测方法、编码器、解码器及计算机存储介质

Country Status (2)

Country Link
CN (1) CN114009014A (zh)
WO (1) WO2021062771A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022258055A1 (zh) * 2021-06-11 2022-12-15 维沃移动通信有限公司 点云属性信息编码方法、解码方法、装置及相关设备
WO2022258063A1 (zh) * 2021-06-11 2022-12-15 鹏城实验室 点云属性编码方法、装置、解码方法、装置及相关设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170214943A1 (en) * 2016-01-22 2017-07-27 Mitsubishi Electric Research Laboratories, Inc. Point Cloud Compression using Prediction and Shape-Adaptive Transforms
CN108322742A (zh) * 2018-02-11 2018-07-24 北京大学深圳研究生院 一种基于帧内预测的点云属性压缩方法
CN108632607A (zh) * 2018-05-09 2018-10-09 北京大学深圳研究生院 一种基于多角度自适应帧内预测的点云属性压缩方法
US20190081638A1 (en) * 2017-09-14 2019-03-14 Apple Inc. Hierarchical point cloud compression
CN110278444A (zh) * 2019-07-17 2019-09-24 华侨大学 一种采用几何引导的稀疏表示三维点云压缩方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140348240A1 (en) * 2013-05-22 2014-11-27 Qualcomm Incorporated Video coding using sample prediction among color components
US9998742B2 (en) * 2015-01-27 2018-06-12 Qualcomm Incorporated Adaptive cross component residual prediction
KR20200005539A (ko) * 2017-04-11 2020-01-15 브이아이디 스케일, 인크. 면 연속성을 사용하는 360 도 비디오 코딩
US10726299B2 (en) * 2017-10-12 2020-07-28 Sony Corporation Sorted geometry with color clustering (SGCC) for point cloud compression
EP3471418A1 (en) * 2017-10-12 2019-04-17 Thomson Licensing Method and apparatus for adaptive transform in video encoding and decoding
CN109257604B (zh) * 2018-11-20 2020-11-27 山东大学 一种基于tmc3点云编码器的颜色属性编码方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170214943A1 (en) * 2016-01-22 2017-07-27 Mitsubishi Electric Research Laboratories, Inc. Point Cloud Compression using Prediction and Shape-Adaptive Transforms
US20190081638A1 (en) * 2017-09-14 2019-03-14 Apple Inc. Hierarchical point cloud compression
CN108322742A (zh) * 2018-02-11 2018-07-24 北京大学深圳研究生院 一种基于帧内预测的点云属性压缩方法
CN108632607A (zh) * 2018-05-09 2018-10-09 北京大学深圳研究生院 一种基于多角度自适应帧内预测的点云属性压缩方法
CN110278444A (zh) * 2019-07-17 2019-09-24 华侨大学 一种采用几何引导的稀疏表示三维点云压缩方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
AHN, JAE-KYUN ET AL.: "Large-scale 3D point cloud compression using adaptive radial distance prediction in hybrid coordinate domains", IEEE JOURNAL OF SELECTED TOPICS IN SIGNAL PROCESSING, vol. 9, no. 3, 30 April 2015 (2015-04-30), XP055534968, DOI: 10.1109/JSTSP.2014.2370752 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022258055A1 (zh) * 2021-06-11 2022-12-15 维沃移动通信有限公司 点云属性信息编码方法、解码方法、装置及相关设备
WO2022258063A1 (zh) * 2021-06-11 2022-12-15 鹏城实验室 点云属性编码方法、装置、解码方法、装置及相关设备

Also Published As

Publication number Publication date
CN114009014A (zh) 2022-02-01

Similar Documents

Publication Publication Date Title
JP7330306B2 (ja) 変換方法、逆変換方法、エンコーダ、デコーダ及び記憶媒体
US11509939B2 (en) Point cloud encoding and decoding method, encoder, and decoder
WO2021062772A1 (zh) 预测方法、编码器、解码器及计算机存储介质
JP7386337B2 (ja) 分割方法、符号器、復号器及びコンピュータ記憶媒体
WO2021062743A1 (zh) 占位信息的预测方法、编码器、解码器、及存储介质
US11936850B2 (en) Methods for intra prediction, and encoder
WO2021062771A1 (zh) 颜色分量预测方法、编码器、解码器及计算机存储介质
US12026920B2 (en) Point cloud encoding and decoding method, encoder and decoder
WO2021062732A1 (zh) 变换方法、逆变换方法、编码器、解码器及存储介质
WO2022120594A1 (zh) 点云编解码方法、编码器、解码器及计算机存储介质
KR20220157490A (ko) 인트라 예측 방법, 장치, 인코더, 디코더 및 저장 매체
WO2023201450A1 (zh) 编解码方法、码流、编码器、解码器以及存储介质
WO2024011739A1 (zh) 点云编解码方法、编解码器及计算机存储介质
WO2023123471A1 (zh) 编解码方法、码流、编码器、解码器以及存储介质
WO2022170511A1 (zh) 点云解码方法、解码器及计算机存储介质
WO2023155045A1 (zh) 预测的方法和装置、编码器、解码器和编解码系统
WO2022170521A1 (zh) 几何重构方法、解码器以及计算机存储介质
WO2024007268A1 (zh) 点云编解码方法、编解码器及计算机存储介质
WO2024082152A1 (zh) 编解码方法及装置、编解码器、码流、设备、存储介质
WO2022233004A1 (zh) 点云编解码方法、编码器、解码器及计算机存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19947915

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19947915

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 19947915

Country of ref document: EP

Kind code of ref document: A1