[go: up one dir, main page]

WO2025007353A9 - Encoding and decoding methods, code stream, encoder, decoder, and storage medium - Google Patents

Encoding and decoding methods, code stream, encoder, decoder, and storage medium Download PDF

Info

Publication number
WO2025007353A9
WO2025007353A9 PCT/CN2023/106176 CN2023106176W WO2025007353A9 WO 2025007353 A9 WO2025007353 A9 WO 2025007353A9 CN 2023106176 W CN2023106176 W CN 2023106176W WO 2025007353 A9 WO2025007353 A9 WO 2025007353A9
Authority
WO
WIPO (PCT)
Prior art keywords
point cloud
current point
azimuth
prediction value
value
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
PCT/CN2023/106176
Other languages
French (fr)
Chinese (zh)
Other versions
WO2025007353A1 (en
Inventor
杨付正
霍俊彦
马彦卓
李明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp Ltd
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 Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority to PCT/CN2023/106176 priority Critical patent/WO2025007353A1/en
Publication of WO2025007353A1 publication Critical patent/WO2025007353A1/en
Publication of WO2025007353A9 publication Critical patent/WO2025007353A9/en
Pending legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding

Definitions

  • the embodiments of the present application relate to the field of point cloud encoding and decoding technology, and in particular, to an encoding and decoding method, a bit stream, an encoder, a decoder, and a storage medium.
  • the geometry information of the point cloud and the attribute information corresponding to the points in the point cloud are encoded separately.
  • the coding and decoding of the geometry information can include octree-based geometry coding and decoding and prediction tree-based geometry coding and decoding.
  • the embodiments of the present application provide a coding and decoding method, a bit stream, an encoder, a decoder and a storage medium, which can improve the accuracy of the prediction effect, thereby improving the point cloud compression performance.
  • an embodiment of the present application provides a decoding method, which is applied to a decoder, and the method includes:
  • An initial prediction value corresponding to the current point cloud is determined according to the azimuth sampling information corresponding to the current point cloud, and a prediction value of a midpoint of the current point cloud is determined according to the initial prediction value.
  • an embodiment of the present application provides an encoding method, which is applied to an encoder, and the method includes:
  • An initial prediction value corresponding to the current point cloud is determined according to the azimuth sampling information corresponding to the current point cloud, and a prediction value of a midpoint of the current point cloud is determined according to the initial prediction value.
  • an embodiment of the present application provides a code stream, which is generated by bit encoding according to information to be encoded; wherein the information to be encoded includes at least:
  • Initialize mode identification information azimuth sampling information, radial distance information, quantization parameters, quantized prediction residual, and mode identification information.
  • an embodiment of the present application provides an encoder, the encoder comprising: a first determining unit and an encoding unit; wherein,
  • the first determining unit is configured to determine azimuth sampling information corresponding to the current point cloud
  • the encoding unit is configured to write the azimuth sampling information into a bit stream
  • the first determination unit is further configured to determine an initial prediction value corresponding to the current point cloud according to azimuth sampling information corresponding to the current point cloud, and determine a prediction value of a midpoint of the current point cloud according to the initial prediction value.
  • an embodiment of the present application provides an encoder, the encoder comprising a first memory and a first processor; wherein,
  • the first memory is used to store a computer program that can be run on the first processor
  • the first processor is used to execute the encoding method as described above when running the computer program.
  • an embodiment of the present application provides a decoder, the decoder comprising: a decoding unit and a second determining unit; wherein:
  • the decoding unit is configured to decode the code stream
  • the second determination unit is configured to determine the azimuth sampling information corresponding to the current point cloud; determine the initial prediction value corresponding to the current point cloud according to the azimuth sampling information corresponding to the current point cloud, and determine the prediction value of the midpoint of the current point cloud according to the initial prediction value.
  • an embodiment of the present application provides a decoder, the decoder comprising a second memory and a second processor; wherein:
  • the second memory is used to store a computer program that can be run on the second processor
  • the second processor is used to execute the decoding method as described above when running the computer program.
  • an embodiment of the present application provides a computer-readable storage medium, which stores a computer program.
  • the computer program When executed, it implements the decoding method as described in the first aspect, or implements the encoding method as described in the second aspect.
  • the embodiment of the present application provides a coding and decoding method, a code stream, an encoder, a decoder and a storage medium.
  • the code stream is decoded to determine the azimuth sampling information corresponding to the current point cloud; the initial prediction value corresponding to the current point cloud is determined according to the azimuth sampling information corresponding to the current point cloud, and the prediction value of the midpoint of the current point cloud is determined according to the initial prediction value.
  • the azimuth sampling information corresponding to the current point cloud is determined, and the azimuth sampling information is written into the code stream; the initial prediction value corresponding to the current point cloud is determined according to the azimuth sampling information corresponding to the current point cloud, and the prediction value of the midpoint of the current point cloud is determined according to the initial prediction value.
  • the corresponding initial prediction value can be determined by the azimuth sampling information corresponding to the current point cloud, which can fully consider the actual size of the azimuth of the root node of the current point cloud, and realize more reasonable initialization processing of the prediction value. That is to say, in the embodiment of the present application, the initialization of the prediction value in combination with the azimuth sampling information can improve the accuracy of the prediction effect, thereby improving the point cloud compression performance.
  • FIG1 is a schematic diagram of a network architecture of point cloud encoding and decoding provided in an embodiment of the present application
  • FIG. 2 is a schematic diagram of a composition framework of a G-PCC encoder
  • FIG3 is a schematic diagram of a composition framework of a G-PCC decoder
  • FIG4 is a schematic diagram of geometric coding
  • FIG5 is a schematic diagram of geometric decoding
  • FIG6 is a schematic diagram of an arrangement of geometric information
  • FIG. 7 is a schematic diagram of a first implementation flow of a point cloud decoding method proposed in an embodiment of the present application.
  • FIG8 is a second schematic diagram of the implementation flow of the point cloud decoding method proposed in an embodiment of the present application.
  • FIG9 is a third schematic diagram of the implementation flow of the point cloud decoding method proposed in an embodiment of the present application.
  • FIG10 is a schematic diagram of a first implementation flow of a point cloud encoding method proposed in an embodiment of the present application.
  • FIG. 11 is a second schematic diagram of the implementation flow of the point cloud encoding method proposed in an embodiment of the present application.
  • FIG. 12 is a third schematic diagram of the implementation flow of the point cloud encoding method proposed in the embodiment of the present application.
  • FIG13 is a schematic diagram of the structure of the encoder
  • FIG14 is a second schematic diagram of the structure of the encoder
  • FIG15 is a schematic diagram of the structure of a decoder
  • FIG. 16 is a second schematic diagram of the structure of the decoder.
  • PCC Point Cloud Compression
  • G-PCC Geometry-based Point Cloud Compression
  • V-PCC Video-based Point Cloud Compression
  • LOD Level of Detail
  • RAHT Region Adaptive Hierarchal Transform
  • CABAC Context-based Adaptive Binary Arithmetic Coding
  • CABAC Context-based Adaptive Binary Arithmetic Coding
  • Point cloud is a three-dimensional representation of the surface of an object.
  • Point cloud (data) of the surface of an object can be collected through acquisition equipment such as photoelectric radar, lidar, laser scanner, and multi-view camera.
  • a point cloud refers to a collection of massive three-dimensional points
  • the points in the point cloud may include the location information of the points and the attribute information of the points.
  • the location information of the points may be the three-dimensional coordinate information of the points.
  • the location information of the points may also be referred to as the geometric information of the points.
  • the attribute information of the points may include color information and/or reflectivity, etc.
  • the color information may be information on any color space.
  • the color information may be RGB information. Among them, R represents red (Red, R), G represents green (Green, G), and B represents blue (Blue, B).
  • the color information may be brightness and chromaticity (YCbCr, YUV) information. Among them, Y represents brightness, Cb (U) represents blue chromaticity, and Cr (V) represents red chromaticity.
  • the points in the point cloud may include the three-dimensional coordinate information of the points and the laser reflection intensity (reflectance) of the points.
  • the points in the point cloud may include the three-dimensional coordinate information of the points and the color information of the points.
  • a point cloud obtained by combining the principles of laser measurement and photogrammetry may include the three-dimensional coordinate information of the points, the laser reflection intensity (reflectance) of the points, and the color information of the points.
  • Point clouds can be divided into the following categories according to the way they are obtained:
  • the first type of static point cloud the object is stationary, and the device that obtains the point cloud is also stationary;
  • the second type of dynamic point cloud the object is moving, but the device that obtains the point cloud is stationary;
  • the third type of dynamic point cloud acquisition the device that acquires the point cloud is moving.
  • point clouds can be divided into two categories according to their usage:
  • Category 1 Machine perception point cloud, which can be used in autonomous navigation systems, real-time inspection systems, geographic information systems, visual sorting robots, disaster relief robots, etc.
  • Category 2 Point cloud perceived by the human eye, which can be used in point cloud application scenarios such as digital cultural heritage, free viewpoint broadcasting, 3D immersive communication, and 3D immersive interaction.
  • point clouds are a collection of massive points, storing point clouds not only consumes a lot of memory, but is also not conducive to transmission. There is also not enough bandwidth to support direct transmission of point clouds at the network layer without compression. Therefore, point clouds need to be compressed.
  • 3D point cloud has become a new generation of immersive multimedia after audio, image and video, and is widely used in applications such as virtual reality, augmented reality, autonomous driving and environmental modeling.
  • point cloud usually has a large amount of data, which is not conducive to its transmission and storage, so it is necessary to efficiently encode and decode the point cloud.
  • the point cloud coding framework that can compress the point cloud can be the G-PCC codec framework or the V-PCC codec framework provided by the Moving Picture Experts Group (MPEG), or the AVS-PCC codec framework provided by the Audio Video Standard (AVS).
  • MPEG Moving Picture Experts Group
  • AVS-PCC codec framework provided by the Audio Video Standard (AVS).
  • the G-PCC codec framework can be used to compress the first type of static point cloud and the third type of dynamically acquired point cloud
  • the V-PCC codec framework can be used to compress the second type of dynamic point cloud.
  • the G-PCC codec framework is mainly described here.
  • FIG1 is a schematic diagram of a network architecture of a point cloud encoding and decoding provided by the embodiment of the present application.
  • the network architecture includes one or more electronic devices 13 to 1N and a communication network 01, wherein the electronic devices 13 to 1N can perform video interaction through the communication network 01.
  • the electronic device can be various types of devices with point cloud encoding and decoding functions.
  • the electronic device can include a mobile phone, a tablet computer, a personal computer, a personal digital assistant, a navigator, a digital phone, a video phone, a television, a sensor device, a server, etc., which is not limited by the embodiment of the present application.
  • the decoder or encoder in the embodiment of the present application can be the above-mentioned electronic device.
  • the electronic device in the embodiment of the present application has a point cloud encoding and decoding function, generally including a point cloud encoder (ie, encoder) and a point cloud decoder (ie, decoder).
  • a point cloud encoder ie, encoder
  • a point cloud decoder ie, decoder
  • the point cloud data is first divided into multiple slices by slice division.
  • the geometric information of the point cloud and the attribute information corresponding to each point cloud are encoded separately.
  • FIG2 shows a schematic diagram of the composition framework of a G-PCC encoder.
  • the geometric information is transformed so that all point clouds are contained in a bounding box, and then quantized.
  • This step of quantization mainly plays a role in scaling. Due to the quantization rounding, the geometric information of a part of the point cloud is the same, so whether to remove duplicate points is determined based on parameters.
  • the process of quantization and removal of duplicate points is also called voxelization.
  • the Bounding Box is divided into octrees or a prediction tree is constructed.
  • arithmetic coding is performed on the points in the leaf nodes of the division to generate a binary geometric bit stream; or, arithmetic coding is performed on the intersection points (Vertex) generated by the division (surface fitting is performed based on the intersection points) to generate a binary geometric bit stream.
  • color conversion is required first to convert the color information (i.e., attribute information) from the RGB color space to the YUV color space. Then, the point cloud is recolored using the reconstructed geometric information so that the uncoded attribute information corresponds to the reconstructed geometric information. Attribute encoding is mainly performed on color information.
  • FIG3 shows a schematic diagram of the composition framework of a G-PCC decoder.
  • the geometric bit stream and the attribute bit stream in the binary bit stream are first decoded independently.
  • the geometric information of the point cloud is obtained through arithmetic decoding-reconstruction of the octree/reconstruction of the prediction tree-reconstruction of the geometry-coordinate inverse conversion;
  • the attribute information of the point cloud is obtained through arithmetic decoding-inverse quantization-LOD partitioning/RAHT-color inverse conversion, and the point cloud data to be encoded (i.e., the output point cloud) is restored based on the geometric information and attribute information.
  • FIG4 is a schematic diagram of geometric coding.
  • the geometric information is firstly transformed so that all point clouds are contained in a bounding box determined by two extreme points (0, 0, 0) and ( 2d , 2d , 2d). Then voxelization is performed, that is, quantization, rounding, and removal of duplicate points, wherein whether to remove duplicate points is determined according to the encoder parameters.
  • the geometric coding of G-PCC can be divided into: octree-based geometric coding and prediction tree-based geometric coding.
  • the input geometric information is first sorted.
  • the default sorting method of the current G-PCC standard test conditions is based on azimuth.
  • the cylindrical coordinates (r, y, z) of the input point cloud are calculated based on the Cartesian coordinates (x, y, z). ⁇ ), where r is the radial distance of the point, also known as the radius; is the azimuth angle of the point; ⁇ is the elevation angle of the laser beam to which the point belongs.
  • tan ⁇ are sorted in order. First compare If the size If they are the same, then compare r. If r is the same, then compare tan ⁇ . Finally, the entire point cloud is reordered.
  • the prediction tree geometry coding can be divided into an azimuth-based geometry prediction coding scheme and a KD-tree-based geometry prediction coding scheme.
  • the encoder when building the prediction tree, the encoder first converts the input point cloud from Cartesian coordinates (x, y, z) to cylindrical coordinates (r, ⁇ ). Each point in the input point cloud is then divided into different laser beams according to its pitch angle. Since the azimuth-based sorting method is used by default when sorting the input geometric information, the geometric information of the entire point cloud is arranged in ascending order of azimuth. For the i-th laser beam, the first point visited is the point with the smallest azimuth among all the points belonging to the laser beam. And the parent node of the points subsequently visited by the i-th beam is the first point in the same laser beam with a smaller azimuth than itself. The parent node of the first point of the i-th laser beam is the first point of the i-1-th laser beam. For the first point of the 0th laser beam, since it has no parent node, it serves as the root node of the entire tree.
  • the predicted value of the geometric information is first determined according to the intra-frame prediction algorithm or the inter-frame prediction algorithm.
  • intra-frame prediction a prediction list is used to predict the point to be coded.
  • inter-frame prediction the prediction point is found in the previous coded frame to predict the point to be coded.
  • the prediction value with the minimum bit rate is selected as the prediction value of the code point to be coded (decoded) through rate-distortion optimization.
  • the prediction residual is obtained by subtracting the actual value of the node geometry information from the predicted value, and the prediction residual is quantized using the quantization parameter.
  • the quantization parameter, the selected prediction value index, the prediction residual and other information are encoded to generate a binary code stream.
  • FIG5 is a schematic diagram of geometric decoding.
  • decoding is the reverse process of encoding.
  • the quantization coefficient and prediction index corresponding to each node are first decoded, and the corresponding prediction value is uniquely determined according to the prediction index; then the prediction residual of the geometric information is decoded and inversely quantized; then the geometric reconstruction information of the point to be decoded is restored according to the prediction value and the prediction residual; then the coordinate inverse transformation of the obtained reconstructed geometric information is performed to obtain the final reconstructed geometric information.
  • the original point cloud is reordered to build the prediction tree more efficiently.
  • the available sorting methods are unordered, Morton order, azimuth order, and radial distance order.
  • the default sorting method is to sort by azimuth, that is, to sort the points according to azimuth, radial distance, and tangent value of pitch angle in turn.
  • the encoder first converts the input point cloud from Cartesian coordinates (x, y, z) to cylindrical coordinates (r, ⁇ ). Then each point in the input point cloud is divided into different laser beams according to its pitch angle. ⁇ ) can be converted to (r, i), where i represents the index of the laser beam. Since the default sorting method based on azimuth is used when sorting the input geometric information, the geometric information of the entire point cloud is arranged in ascending order of azimuth.
  • FIG6 is a schematic diagram of the arrangement of geometric information.
  • the first point visited is the point with the smallest azimuth angle among all the points belonging to the laser beam.
  • the parent node of the points subsequently visited by the i-th laser beam is the first point with a smaller azimuth angle than itself in the same laser beam.
  • the parent node of the first point of the i-th laser beam is the first point of the i-1-th laser beam.
  • For the first point of the 0-th laser beam since it has no parent node, it serves as the root node of the entire tree.
  • the cylindrical coordinates of the input point cloud (r, i) is initialized to (r min , 0, 0).
  • the code point to be encoded (decoded) is the root node of the prediction tree
  • its cylindrical coordinates (r, i) is (r min , 0, 0)
  • r min is the minimum radius of the current input point cloud, which is obtained by traversing at the encoder and transmitted to the decoder through pgeom_min_radius. Since the azimuth is in the range of (- ⁇ , ⁇ ], considering that the geometric information of the input point cloud is arranged in ascending order of azimuth, the azimuth of the root node is very close to - ⁇ . It is unreasonable to use 0 as the predicted value of the root node azimuth.
  • the code stream is decoded to determine the azimuth sampling information corresponding to the current point cloud; the initial prediction value corresponding to the current point cloud is determined according to the azimuth sampling information corresponding to the current point cloud, and the prediction value of the midpoint of the current point cloud is determined according to the initial prediction value.
  • the azimuth sampling information corresponding to the current point cloud is determined, and the azimuth sampling information is written into the code stream; the initial prediction value corresponding to the current point cloud is determined according to the azimuth sampling information corresponding to the current point cloud, and the prediction value of the midpoint of the current point cloud is determined according to the initial prediction value.
  • the corresponding initial prediction value in the process of initializing the prediction value of the current point cloud, can be determined by the azimuth sampling information corresponding to the current point cloud, which can fully consider the actual size of the azimuth of the root node of the current point cloud, and realize more reasonable initialization processing of the prediction value. That is to say, in the embodiment of the present application, the initialization of the prediction value in combination with the azimuth sampling information can improve the accuracy of the prediction effect, thereby improving the point cloud compression performance.
  • the point cloud encoding method in the embodiment of the present application can be applied to the predictive encoding and arithmetic encoding parts as shown in Figure 4.
  • the point cloud decoding method in the embodiment of the present application can also be applied to the predictive decoding and arithmetic decoding parts as shown in Figure 5.
  • the point cloud encoding and decoding method in the embodiment of the present application can be applied to both the encoder and the decoder, and can even be applied to both the encoder and the decoder at the same time, but the embodiment of the present application does not make specific limitations.
  • FIG. 7 is a schematic diagram of a first implementation flow of the point cloud decoding method proposed in the embodiment of the present application.
  • the method for the decoder to perform point cloud decoding processing may include the following steps:
  • Step 101 Decode the code stream to determine the azimuth sampling information corresponding to the current point cloud.
  • the decoder may first decode the code stream, thereby determining the azimuth sampling information corresponding to the current point cloud.
  • the azimuth sampling information corresponding to the current point cloud can determine the azimuth sampling interval corresponding to the current point cloud.
  • the azimuth sampling information corresponding to the current point cloud can be represented in the form of syntax elements, that is, the decoder decodes the code stream to obtain the syntax elements representing the azimuth sampling information, thereby determining the azimuth sampling information.
  • the azimuth sampling information corresponding to the current point cloud and representing the azimuth sampling interval can be directly obtained, and the relevant information used to calculate the azimuth sampling information can also be obtained, and then the azimuth sampling information corresponding to the current point cloud and representing the azimuth sampling interval can be derived based on the relevant information.
  • the code stream when determining the azimuth sampling information, can also be decoded to determine the first azimuth parameter, and then the azimuth sampling information corresponding to the current point cloud can be further determined based on the first azimuth parameter and a preset value.
  • the preset value can be any preset value, and the present application does not specifically limit it.
  • the preset value can be 1.
  • the azimuth sampling information corresponding to the current point cloud can be directly determined by decoding the bit stream, that is, the azimuth sampling interval
  • the first azimuth parameter geom_angular_azimuth_speed_minus1 can be determined by decoding the bit stream, and then the corresponding azimuth sampling information, that is, the azimuth sampling interval, is calculated by the first azimuth parameter geom_angular_azimuth_speed_minus1 and a preset value (such as 1). For example, formula (1):
  • the syntax element geom_angular_azimuth_speed_minus1 can be transmitted from the encoding end to the decoding end through the bit stream, and the geom_angular_azimuth_speed_minus1 can be a syntax element in a geometric parameter set (GPS).
  • GPS geometric parameter set
  • the code stream while decoding the code stream to determine the azimuth sampling information corresponding to the current point cloud, the code stream can also be decoded to determine the radial distance information corresponding to the current point cloud.
  • the radial distance information corresponding to the current point cloud can determine the minimum radial distance corresponding to the current point cloud, that is, the minimum radius.
  • the radial distance information corresponding to the current point cloud can be represented in the form of a syntax element, that is, the decoder decodes the code stream to obtain the syntax element representing the radial distance information, thereby determining the radial distance information.
  • the syntax element pgeom_min_radius representing the radial distance information may be determined by decoding the bitstream, and then the corresponding radial distance information r min may be determined by pgeom_min_radius.
  • the syntax element pgeom_min_radius can be transmitted from the encoding end to the decoding end through the bit stream, and the pgeom_min_radius can be a syntax element in the geometry block header (GPS) information.
  • GPS geometry block header
  • the point cloud decoding method proposed in the embodiment of the present application can be used in the geometric decoding process based on the prediction tree, wherein the current point cloud can be the point cloud to be decoded.
  • the geometric information of the point in the current point cloud can be expressed in the form of cylindrical coordinates.
  • the geometric information of the point in the current point cloud can be expressed as (r, i), where r is the radial distance of the point, also known as the radius; is the azimuth angle of the point; ⁇ is the elevation angle of the laser beam to which the point belongs.
  • the geometric information of the point in the current point cloud can be represented by a radial distance component, an azimuth component, and a pitch angle component.
  • Step 102 determine an initial prediction value corresponding to the current point cloud according to the azimuth sampling information corresponding to the current point cloud, and determine a prediction value of a midpoint of the current point cloud according to the initial prediction value.
  • the prediction value after decoding the code stream and determining the azimuth sampling information corresponding to the current point cloud, the prediction value can be initialized according to the azimuth sampling information corresponding to the current point cloud, and the initial prediction value corresponding to the current point cloud can be determined, so that the prediction value of the midpoint of the current point cloud can be further determined based on the initial prediction value.
  • the azimuth sampling information corresponding to the current point cloud can be used to determine the initial prediction value, and the radial distance information corresponding to the current point cloud can also be used to determine the initial prediction value.
  • the azimuth sampling information can be used to determine the azimuth component of the initial prediction value.
  • the radial distance information can be used to determine the radial distance component of the initial prediction value.
  • the initial prediction value corresponding to the current point cloud may be the initialized geometric information prediction value corresponding to the current point cloud.
  • the geometric information of any point in the current point cloud can be expressed as cylindrical coordinates (r, i), therefore, when initializing the prediction value of the current point cloud, the final obtained initial prediction value can also be represented by cylindrical coordinates, so the initial prediction value can also be represented by radial distance components, azimuth components, and pitch angle components.
  • the azimuth sampling information corresponding to the current point cloud can be used to determine the azimuth component in the initial predicted value.
  • the radial distance information corresponding to the current point cloud can be used to determine the radial distance component in the initial predicted value.
  • the azimuth component in the initial prediction value finally obtained is determined by the azimuth sampling information, and at the same time, the radial distance component is determined by the radial distance information.
  • the initialization parameters when determining the initial prediction value corresponding to the current point cloud based on the azimuth sampling information and the radial distance information, can be first determined based on the azimuth sampling information; and then the azimuth component corresponding to the initial prediction value can be determined based on the azimuth sampling information and the initialization parameters.
  • the azimuth sampling information can be used to calculate the initialization parameters, and the initialization parameters can be used to adjust and control the azimuth component in the process of initializing the predicted value. Then, the azimuth sampling information and the initialization parameters can be combined to further calculate the azimuth component in the initial predicted value.
  • the initialization parameters may be determined based on the azimuth sampling information in combination with any numerical value and by any calculation method.
  • the azimuth sampling information is the azimuth sampling interval Then according to Calculate the initialization parameter k:
  • round() is a Round function, which means returning a value that is the result of rounding to a specified number of decimal places.
  • the azimuth component of the initial prediction value may be determined by any calculation method in combination with any numerical value based on the azimuth sampling information and the initialization parameters.
  • the azimuth sampling information is the azimuth sampling interval
  • the initialization parameter is k, and the azimuth component is finally calculated.
  • the radial distance component corresponding to the initial prediction value can be directly determined based on the radial distance information.
  • the radial distance information is the minimum radial value r min of the current point cloud, and the radial distance component r 0 is finally calculated:
  • the radial distance component of the initial prediction value finally obtained is r min
  • the azimuth component is
  • the initial prediction value can be expressed as (r min , 0).
  • the initial prediction value after decoding the code stream and determining the radial distance information corresponding to the current point cloud, when determining the initial prediction value, you can also choose to determine the radial distance component of the initial prediction value based on the radial distance information, and set the azimuth component and the pitch angle component to fixed values, for example, set the azimuth component to 0, and set the pitch angle component to 0 at the same time.
  • a common initialization scheme may also be selected, and the initial prediction value finally obtained may be expressed as (r min , 0, 0).
  • the point cloud decoding method proposed in the embodiment of the present application when initializing the prediction value of the current point cloud, can choose to determine the azimuth component of the initial prediction value according to the azimuth sampling information corresponding to the current point cloud, so that the setting of the initial prediction value is more reasonable.
  • the prediction value of the midpoint of the current point cloud can be determined according to the initial prediction value.
  • the initial prediction value when determining the prediction value of a point in the current point cloud based on the initial prediction value, can be first determined as the prediction value of the root node of the prediction tree corresponding to the current point cloud; and then based on the prediction value of the root node, the prediction values of other points in the current point cloud are determined.
  • the code stream can be further decoded to determine the quantization parameter and the quantized prediction residual corresponding to the current point in the current point cloud; then the quantized prediction residual can be inverse quantized to determine the prediction residual corresponding to the current point; finally, the reconstruction value corresponding to the current point can be determined based on the prediction value and prediction residual corresponding to the current point.
  • the code stream when performing prediction processing on the geometric information of the current point, can also be decoded to determine the mode identification information corresponding to the current point; wherein the mode identification information is used to indicate whether the prediction mode corresponding to the current point is an inter-frame mode or an intra-frame mode.
  • the mode identification information of the current point in the current point cloud can be determined by decoding the code stream, thereby determining whether to adopt an intra-frame prediction mode or an inter-frame prediction mode for the current point according to the mode identification information, and finally determining the prediction value of the current point according to the corresponding prediction mode.
  • the quantization coefficient and the prediction index (mode identification information) corresponding to the current point are first decoded, and then the corresponding prediction value is uniquely determined according to the prediction index, wherein, for the root node of the current point cloud, the initial prediction value is the geometric prediction value determined after the initialization processing; then, the quantized prediction residual of the geometric information is decoded, and dequantized to obtain the prediction residual; then, the geometric reconstruction information of the current point is restored based on the prediction value and the prediction residual; then, the obtained reconstructed geometric information is subjected to a coordinate inverse transformation to obtain the final reconstructed geometric information.
  • FIG8 is a second schematic diagram of the implementation flow of the point cloud decoding method proposed in an embodiment of the present application.
  • the method for the decoder to perform point cloud decoding may further include the following steps:
  • Step 103 Determine initialization mode identification information.
  • initialization identification information may also be determined.
  • the initialization mode identification information may determine and indicate an initialization mode of a prediction value used by the current point cloud, wherein the initialization mode of a prediction value used by the current point cloud may include a first initialization mode and a second initialization mode.
  • the initialization mode used by the current point cloud is the first initialization mode or the second initialization mode.
  • the first initialization mode may represent a mode for initializing the prediction value using the azimuth angle related information transmitted in the code stream; the second initialization mode may represent a mode for initializing the prediction value without using the azimuth angle related information transmitted in the code stream.
  • a decoding code stream may be selected to determine the initialization mode identification information.
  • the initialization mode identification information can be transmitted from the encoding end to the decoding end through the code stream.
  • the initialization mode identification information when determining the initialization mode identification information, it is possible to choose to determine the initialization mode identification information through a syntax table corresponding to the current point cloud.
  • the initialization mode identification information can be set in the syntax table corresponding to the current point cloud, such as the syntax table.
  • the initialization mode identification information when the value of the initialization mode identification information is a first value, it can be determined that the initialization mode identification information indicates that the current point cloud uses the first initialization mode; when the value of the initialization mode identification information is a second value, it can be determined that the initialization mode identification information indicates that the current point cloud uses the second initialization mode.
  • the first value is different from the second value, and the first value and the second value may be in parameter form or in digital form.
  • the first value may be 0, and the second value may be 1.
  • the value of the initialization mode identification information when the value of the initialization mode identification information is 0, it can be determined that the first initialization mode is used to initialize the prediction value of the current point cloud, that is, the azimuth component of the initial prediction value of the current point cloud is determined according to the azimuth sampling information corresponding to the current point cloud; when the value of the initialization mode identification information is 1, it can be determined that the second initialization mode is used to initialize the prediction value of the current point cloud, that is, the initial prediction value of the current point cloud is not determined according to the azimuth sampling information corresponding to the current point cloud, but the azimuth component of the initial prediction value of the current point cloud is directly set to a third value, for example, the third value is 0.
  • the initialization mode identification information may be a parameter written in a profile, or may be a value of a flag, which is not specifically limited here.
  • the initialization mode identification information may be used as a syntax element at the GPS level or as a syntax element at the GBH level, and the present application does not make any specific limitation thereto.
  • Step 104 When the initialization mode identification information indicates that the current point cloud uses the first initialization mode, a process for determining the azimuth sampling information and the radial distance information is executed.
  • the process of determining the azimuth sampling information and radial distance information corresponding to the current point cloud can be executed, so that the predicted value of the current point cloud can be further initialized according to the azimuth sampling information and radial distance information corresponding to the current point cloud to determine the corresponding initial prediction value.
  • the azimuth component of the initial predicted value is determined according to the azimuth sampling interval (azimuth sampling information) corresponding to the current point cloud, for example, the azimuth component of the initial predicted value is determined as
  • Step 105 When the initialization mode identification information indicates that the current point cloud uses the second initialization mode, a radial distance information determination process is executed.
  • the process of determining the radial distance information corresponding to the current point cloud can be executed, so that the predicted value of the current point cloud can be further initialized according to the radial distance information corresponding to the current point cloud to determine the corresponding initial prediction value.
  • FIG. 9 is a schematic diagram of a third implementation flow of the point cloud decoding method proposed in an embodiment of the present application.
  • the method for performing point cloud decoding by the decoder may further include the following steps:
  • Step 106 When the initialization mode identification information indicates that the current point cloud uses the first initialization mode, determine the azimuth component of the initial prediction value according to the azimuth sampling information.
  • the initialization mode identification information indicates that the current point cloud uses the first initialization mode
  • Step 107 When the initialization mode identification information indicates that the current point cloud uses the second initialization mode, the azimuth component of the initial prediction value is set to a third value.
  • the azimuth component of the initial predicted value can be directly determined as the third value.
  • the third value can be any value, such as 0.
  • the azimuth component of the predicted value There are many ways to initialize the predicted value, and the specific method is indicated by the header information such as the initialization mode identification information.
  • a syntax element such as geom_angular_phi_ini_zero
  • the header information such as GPS or/and GBH
  • the syntax element can represent the cylindrical coordinates (r, i) Azimuth
  • the azimuth sampling information (such as the azimuth sampling threshold) transmitted in the code stream can be used to determine the azimuth component of the initial prediction value, instead of directly initializing the azimuth component of the initial prediction value to 0.
  • This prediction value initialization method is more reasonable and can effectively improve the prediction effect of geometric information.
  • the azimuth sampling information and radial distance information corresponding to the current point cloud can be determined first, and then the predicted value of the current point cloud can be initialized in combination with the azimuth sampling information and the radial distance information.
  • the azimuth component of the initial predicted value can be determined according to the azimuth sampling information, and at the same time, the radial distance component of the initial predicted value can be determined according to the radial distance information.
  • the decoding method proposed in the embodiment of the present application is experimentally verified based on the general test software TMC13V21 of G-PCC. Compared with it, the decoding method proposed in the embodiment of the present application is compared with the prediction tree geometry coding code stream performance under lossless conditions as shown in Table 1. It can be seen from Table 1 that the decoding method has some small gains in the geometry code streams of these point cloud sequences.
  • the embodiment of the present application discloses a point cloud decoding method, at the decoding end, the code stream is decoded to determine the azimuth sampling information corresponding to the current point cloud; the initial prediction value corresponding to the current point cloud is determined according to the azimuth sampling information corresponding to the current point cloud, and the prediction value of the midpoint of the current point cloud is determined according to the initial prediction value.
  • the corresponding initial prediction value can be determined by the azimuth sampling information corresponding to the current point cloud, which can fully consider the actual size of the azimuth of the root node of the current point cloud, and realize more reasonable initialization processing of the prediction value.
  • the initialization of the prediction value in combination with the azimuth sampling information can improve the accuracy of the prediction effect, thereby improving the point cloud compression performance.
  • FIG. 10 is a schematic diagram of a first implementation flow of the point cloud encoding method provided in the embodiment of the present application.
  • the method for the encoder to perform point cloud encoding processing may include the following steps:
  • Step 201 Determine the azimuth sampling information corresponding to the current point cloud, and write the azimuth sampling information into the bitstream.
  • the encoder may first determine the azimuth sampling information corresponding to the current point cloud, and may write the azimuth sampling information into a bit stream and transmit it to a decoding end.
  • the point cloud coding method proposed in the embodiment of the present application can be applied to the geometric coding process based on the prediction tree.
  • the input geometric information can be sorted first, for example, by sorting in the azimuth angle.
  • the encoder when building the prediction tree, the encoder first converts the input point cloud from Cartesian coordinates (x, y, z) to cylindrical coordinates (r, ⁇ ). Each point in the input point cloud is then divided into different laser beams according to its pitch angle. Since the azimuth-based sorting method is used by default when sorting the input geometric information, the geometric information of the entire point cloud is arranged in ascending order of azimuth. For the i-th laser beam, the first point visited is the point with the smallest azimuth among all the points belonging to the laser beam. And the parent node of the points subsequently visited by the i-th beam is the first point in the same laser beam with a smaller azimuth than itself. The parent node of the first point of the i-th laser beam is the first point of the i-1-th laser beam. For the first point of the 0th laser beam, since it has no parent node, it serves as the root node of the entire tree.
  • the predicted value of the geometric information is first determined according to the intra-frame prediction algorithm or the inter-frame prediction algorithm.
  • intra-frame prediction a prediction list is used to predict the point to be coded.
  • inter-frame prediction the prediction point is found in the previous coded frame to predict the point to be coded.
  • the prediction value with the minimum bit rate is selected as the prediction value of the code point to be coded (decoded) through rate-distortion optimization.
  • the prediction residual is obtained by subtracting the actual value of the node geometry information from the predicted value, and the prediction residual is quantized using the quantization parameter.
  • the quantization parameter, the selected prediction value index, the prediction residual and other information are encoded to generate a binary code stream.
  • the available sorting methods are unordered, Morton order, azimuth order and radial distance order.
  • the selected sorting method is sorting by azimuth, that is, sorting each point according to azimuth, radial distance and pitch tangent value in turn.
  • a prediction tree structure is established.
  • the encoder will first convert the input point cloud from Cartesian coordinates (x, y, z) to cylindrical coordinates (r, ⁇ ). Then each point in the input point cloud is divided into different laser beams according to its pitch angle. ⁇ ) can be converted to (r, i), where i represents the index of the laser beam.
  • the geometric information of the entire point cloud is arranged in ascending order of azimuth.
  • the first point visited is the point with the smallest azimuth among all the points belonging to the laser beam.
  • the parent node of the points subsequently visited by the i-th beam is the first point in the same laser beam with a smaller azimuth than itself.
  • the parent node of the first point of the i-th laser beam is the first point of the i-1-th laser beam.
  • the first point of the 0th laser beam since it has no parent node, it serves as the root node of the entire tree.
  • the azimuth sampling information corresponding to the current point cloud can determine the azimuth sampling interval corresponding to the current point cloud.
  • the azimuth sampling information corresponding to the current point cloud can be represented in the form of syntax elements, that is, after the encoder encodes the azimuth sampling information and transmits the code stream to the decoding end, the decoder decodes the code stream and obtains the syntax elements representing the azimuth sampling information, thereby determining the azimuth sampling information.
  • the encoder can directly write the azimuth sampling information corresponding to the current point cloud and representing the azimuth sampling interval into the bitstream, or it can choose to write the relevant information used to calculate the azimuth sampling information into the bitstream, so that the decoder can derive the azimuth sampling information corresponding to the current point cloud and representing the azimuth sampling interval based on the relevant information.
  • the encoder may write the first azimuth parameter into a code stream for transmission to a decoding end. Accordingly, when determining the azimuth sampling information, the decoder may decode the code stream, determine the first azimuth parameter, and then further determine the azimuth sampling information corresponding to the current point cloud based on the first azimuth parameter and a preset value.
  • the encoder may first determine the first azimuth parameter according to the azimuth sampling information and the preset value; and then write the first azimuth parameter into the bitstream.
  • the preset value can be any preset value, and the present application does not specifically limit it.
  • the preset value can be 1.
  • the encoder may directly send the azimuth sampling information corresponding to the current point cloud, such as the azimuth sampling interval Write code stream.
  • the encoder may first determine the first azimuth parameter geom_angular_azimuth_speed_minus1, and then write the first azimuth parameter into the bitstream. ) and a preset value (eg, 1) to calculate the corresponding first azimuth parameter geom_angular_azimuth_speed_minus1. For example, formula (1).
  • the syntax element geom_angular_azimuth_speed_minus1 can be transmitted from the encoding end to the decoding end through the bit stream, and the geom_angular_azimuth_speed_minus1 can be a syntax element in a geometric parameter set (GPS).
  • GPS geometric parameter set
  • the radial distance information corresponding to the current point cloud can also be determined, and the radial distance information corresponding to the current point cloud can be written into the code stream and transmitted to the decoding end.
  • the radial distance information corresponding to the current point cloud can determine the minimum radial distance corresponding to the current point cloud, that is, the minimum radius.
  • the radial distance information corresponding to the current point cloud can be represented in the form of a syntax element, that is, after the encoder encodes the radial distance information and transmits the code stream to the decoding end, the decoder decodes the code stream to obtain the syntax element representing the radial distance information, thereby determining the radial distance information.
  • the encoder may first determine the radial distance information r min , and then transmit the radial distance information r min through the syntax element pgeom_min_radius.
  • the decoder may first determine the syntax element pgeom_min_radius representing the radial distance information when decoding the bitstream, and then determine the corresponding radial distance information r min through pgeom_min_radius. For example, formula (2).
  • the syntax element pgeom_min_radius can be transmitted from the encoding end to the decoding end through the bit stream, and the pgeom_min_radius can be a syntax element in the geometry block header (GPS) information.
  • GPS geometry block header
  • the point cloud encoding method proposed in the embodiment of the present application can be used in the geometric encoding processing based on the prediction tree, wherein the current point cloud can be the point cloud to be encoded.
  • the geometric information of the point in the current point cloud can be expressed in the form of cylindrical coordinates.
  • the geometric information of the point in the current point cloud can be expressed as (r, i), where r is the radial distance of the point, also known as the radius; is the azimuth angle of the point; ⁇ is the elevation angle of the laser beam to which the point belongs.
  • the geometric information of the point in the current point cloud can be represented by a radial distance component, an azimuth component, and a pitch angle component.
  • Step 202 determine an initial prediction value corresponding to the current point cloud according to the azimuth sampling information corresponding to the current point cloud, and determine a prediction value of a midpoint of the current point cloud according to the initial prediction value.
  • the prediction value after determining the azimuth sampling information corresponding to the current point cloud, the prediction value can be initialized according to the azimuth sampling information corresponding to the current point cloud, and the initial prediction value corresponding to the current point cloud can be determined, so that the prediction value of the midpoint of the current point cloud can be further determined based on the initial prediction value.
  • the azimuth sampling information corresponding to the current point cloud can be used to determine the initial prediction value, and the radial distance information corresponding to the current point cloud can also be used to determine the initial prediction value.
  • the azimuth sampling information can be used to determine the azimuth component of the initial prediction value.
  • the radial distance information can be used to determine the radial distance component of the initial prediction value.
  • the initial prediction value corresponding to the current point cloud may be the initialized geometric information prediction value corresponding to the current point cloud.
  • the azimuth sampling information corresponding to the current point cloud can be used to determine the azimuth component in the initial predicted value.
  • the azimuth sampling information can be used to calculate the initialization parameters, and the initialization parameters can be used to adjust and control the azimuth component in the process of initializing the predicted value. Then, the azimuth sampling information and the initialization parameters can be combined to further calculate the azimuth component in the initial predicted value.
  • round() is a Round function, which means returning a value that is the result of rounding to a specified number of decimal places.
  • the azimuth component of the initial prediction value may be determined by any calculation method in combination with any numerical value based on the azimuth sampling information and the initialization parameters.
  • the azimuth sampling information is the azimuth sampling interval
  • the initialization parameter is k
  • the azimuth component is finally calculated. As shown in formula (4).
  • the radial distance component corresponding to the initial prediction value can be directly determined based on the radial distance information.
  • the radial distance information is the minimum radial value r min of the current point cloud, and the radial distance component r 0 is finally calculated, as shown in formula (5).
  • the radial distance component of the initial prediction value finally obtained is r min
  • the azimuth component is
  • the pitch angle component of the initial predicted value can also be set to a fixed value, for example, the pitch angle component can be set to 0.
  • the initial prediction value can be expressed as (r min , 0).
  • a common initialization scheme may also be selected, and the initial prediction value finally obtained may be expressed as (r min , 0, 0).
  • the point cloud encoding method proposed in the embodiment of the present application when initializing the prediction value of the current point cloud, can choose to determine the azimuth component of the initial prediction value according to the azimuth sampling information corresponding to the current point cloud, so that the setting of the initial prediction value is more reasonable.
  • the prediction value of the midpoint of the current point cloud can be determined according to the initial prediction value.
  • the initial prediction value when determining the prediction value of a point in the current point cloud based on the initial prediction value, can be first determined as the prediction value of the root node of the prediction tree corresponding to the current point cloud; and then based on the prediction value of the root node, the prediction values of other points in the current point cloud are determined.
  • the prediction residual corresponding to the current point can be further determined based on the prediction value corresponding to the current point in the current point cloud; then the prediction residual can be quantized according to the quantization parameter corresponding to the current point to determine the quantized coefficient residual corresponding to the current point.
  • the mode identification information corresponding to the current point when performing prediction processing on the geometric information of the current point, can also be determined; wherein the mode identification information is used to indicate whether the prediction mode corresponding to the current point is an inter-frame mode or an intra-frame mode.
  • the encoder can determine the mode identification information corresponding to the current point based on the rate-distortion algorithm, wherein, for the current point (the point to be encoded), the prediction value of the geometric information can be determined according to the intra-frame prediction algorithm or the inter-frame prediction algorithm, and then the prediction value with the smallest bit rate is selected as the prediction value of the current point through the rate-distortion optimization algorithm, and the corresponding mode identification information is determined at the same time.
  • the encoder may also write the mode identification information corresponding to the current point into the code stream and transmit it to the decoding end.
  • the mode identification information corresponding to the current point in the current point cloud can also be determined by a rate-distortion algorithm, and the mode identification information can be written into the bit stream.
  • the decoder determines the mode identification information of the current point in the current point cloud by decoding the bit stream, and thus determines whether to adopt an intra-frame prediction mode or an inter-frame prediction mode for the current point according to the mode identification information, and finally determines the prediction value of the current point according to the corresponding prediction mode.
  • FIG. 11 is a second schematic diagram of the implementation flow of the point cloud encoding method proposed in an embodiment of the present application.
  • the method for performing point cloud encoding by the encoder may further include the following steps:
  • Step 203 Determine initialization mode identification information.
  • initialization identification information may also be determined.
  • the initialization mode identification information may determine and indicate an initialization mode of a prediction value used by the current point cloud, wherein the initialization mode of a prediction value used by the current point cloud may include a first initialization mode and a second initialization mode.
  • the first initialization mode may represent a mode for initializing the prediction value using the azimuth angle related information transmitted in the code stream; the second initialization mode may represent a mode for initializing the prediction value without using the azimuth angle related information transmitted in the code stream.
  • the initialization mode identification information can be determined by the syntax table corresponding to the current point cloud. That is, in an embodiment of the present application, the initialization mode identification information can be set in the syntax table corresponding to the current point cloud, such as syntax table.
  • the value of the initialization mode identification information when it is determined that the current point cloud uses the first initialization mode, can be set to a first value; when it is determined that the current point cloud uses the second initialization mode, the value of the initialization mode identification information can be set to a second value.
  • the first value may be 0, and the second value may be 1.
  • the value of the initialization mode identification information when the value of the initialization mode identification information is 0, it can be determined that the first initialization mode is used to initialize the prediction value of the current point cloud, that is, the azimuth component of the initial prediction value of the current point cloud is determined according to the azimuth sampling information corresponding to the current point cloud; when the value of the initialization mode identification information is 1, it can be determined that the second initialization mode is used to initialize the prediction value of the current point cloud, that is, the initial prediction value of the current point cloud is not determined according to the azimuth sampling information corresponding to the current point cloud, but the azimuth component of the initial prediction value of the current point cloud is directly set to a third value, for example, the third value is 0.
  • the process of determining the azimuth sampling information and radial distance information corresponding to the current point cloud can be executed, so that the predicted value of the current point cloud can be further initialized according to the azimuth sampling information and radial distance information corresponding to the current point cloud to determine the corresponding initial prediction value.
  • the azimuth component of the initial predicted value is determined according to the azimuth sampling interval (azimuth sampling information) corresponding to the current point cloud, for example, the azimuth component of the initial predicted value is determined as
  • the initialization mode identification information indicates that the current point cloud uses the first initialization mode
  • Step 207 When the initialization mode identification information indicates that the current point cloud uses the second initialization mode, the azimuth component of the initial prediction value is set to a third value.
  • a syntax element is set in the header information, such as GPS and/or GBH, such as
  • this syntax element can represent the cylindrical coordinates of the current point cloud (r, i) Azimuth The predicted initial value of
  • the azimuth sampling information (such as the azimuth sampling threshold) transmitted in the code stream can be used to determine the azimuth component of the initial prediction value, instead of directly initializing the azimuth component of the initial prediction value to 0.
  • This prediction value initialization method is more reasonable and can effectively improve the prediction effect of geometric information.
  • the azimuth sampling information and radial distance information corresponding to the current point cloud can be determined first, and then the predicted value of the current point cloud can be initialized in combination with the azimuth sampling information and the radial distance information.
  • the azimuth component of the initial predicted value can be determined according to the azimuth sampling information, and at the same time, the radial distance component of the initial predicted value can be determined according to the radial distance information.
  • This embodiment provides an encoding method, at the encoding end, determining the azimuth sampling information corresponding to the current point cloud, and writing the azimuth sampling information into the bitstream; determining the initial prediction value corresponding to the current point cloud according to the azimuth sampling information corresponding to the current point cloud, and determining the prediction value of the midpoint of the current point cloud according to the initial prediction value. It can be seen that in the embodiment of the present application, in the process of initializing the prediction value of the current point cloud, it is possible to choose to determine the corresponding initial prediction value through the azimuth sampling information corresponding to the current point cloud, which can fully consider the actual size of the azimuth of the root node of the current point cloud, and achieve more reasonable initialization processing of the prediction value. In other words, in the embodiment of the present application, initializing the prediction value in combination with the azimuth sampling information can improve the accuracy of the prediction effect, thereby improving the point cloud compression performance.
  • the first determining unit 111 is configured to determine the azimuth sampling information corresponding to the current point cloud
  • the encoding unit 112 is configured to write the azimuth sampling information into a bit stream
  • the first determination unit 111 is further configured to determine an initial prediction value corresponding to the current point cloud according to the azimuth sampling information corresponding to the current point cloud, and determine a prediction value of a midpoint of the current point cloud according to the initial prediction value.
  • the encoder 100 can also be regarded as a data processing mode (or “entropy encoder”), which is used to encode the values of the grammatical elements to be encoded.
  • entropy encoder a data processing mode
  • 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 the part that contributes to the prior art 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, including several instructions for a computer device (which can be a personal computer, server, or network device, etc.) or a processor to perform all or part of the steps of the method described in this embodiment.
  • the aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), disk or optical disk, etc., various media that can store program codes.
  • an embodiment of the present application provides a computer-readable storage medium, which is applied to the encoder 100.
  • the computer-readable storage medium stores a computer program.
  • the computer program When the computer program is executed by the first processor, it implements the encoding method described in any one of the aforementioned embodiments.
  • Figure 14 is a second schematic diagram of the composition structure of the encoder.
  • the encoder 100 may include: a first memory 121 and a first processor 122, a first communication interface 123 and a first bus system 124.
  • the first memory 121, the first processor 122, and the first communication interface 123 are coupled together through the first bus system 124.
  • the first bus system 124 is used to achieve connection and communication between these components.
  • the first bus system 124 also includes a power bus, a control bus, and a status signal bus.
  • various buses are labeled as the first bus system 124 in Figure 10. Among them,
  • the first communication interface 123 is used for receiving and sending signals during the process of sending and receiving information with other external network elements;
  • the first processor 122 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the hardware integrated logic circuit or software instructions in the first processor 122.
  • the above-mentioned first processor 122 may be a general-purpose processor, a digital signal processor (Digital Signal Processor, DSP), an application-specific integrated circuit (Application Specific Integrated Circuit, ASIC), a field 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 Field Programmable Gate Array
  • the various methods, steps and logic block diagrams disclosed in the embodiments of the present application can be implemented or executed.
  • the general-purpose processor can be a microprocessor or the processor can also be any conventional processor, etc.
  • the steps of the method disclosed in the embodiments of the present application can be directly embodied as a hardware decoding processor to execute, or the hardware and software modules in the decoding processor can be executed.
  • the software module can be located in a mature storage medium in the field such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory or an electrically erasable programmable memory, a register, etc.
  • the storage medium is located in the first memory 121, and the first processor 122 reads the information in the first memory 121 and completes the steps of the above method in combination with its hardware.
  • the processing unit can be implemented in one or more application specific integrated circuits (Application Specific Integrated Circuits, ASIC), digital signal processors (Digital Signal Processing, DSP), digital signal processing devices (DSP Device, DSPD), programmable logic devices (Programmable Logic Device, PLD), field programmable gate arrays (Field-Programmable Gate Array, FPGA), general processors, controllers, microcontrollers, microprocessors, other electronic units for performing the functions described in this application or a combination thereof.
  • ASIC Application Specific Integrated Circuits
  • DSP Digital Signal Processing
  • DSP Device digital signal processing devices
  • PLD programmable logic devices
  • FPGA field programmable gate array
  • general processors controllers, microcontrollers, microprocessors, other electronic units for performing the functions described in this application or a combination thereof.
  • the technology described in this application can be implemented by a module (such as a process, function, etc.) that performs the functions described in this application.
  • the software code can be stored in a memory and executed by a processor.
  • the memory can be implemented in the processor or outside the processor.
  • the present embodiment provides an encoder that determines the azimuth sampling information corresponding to the current point cloud and writes the azimuth sampling information into the bitstream; determines the initial prediction value corresponding to the current point cloud based on the azimuth sampling information corresponding to the current point cloud, and determines the prediction value of the midpoint of the current point cloud based on the initial prediction value. It can be seen that in the embodiment of the present application, in the process of initializing the prediction value of the current point cloud, it is possible to choose to determine the corresponding initial prediction value through the azimuth sampling information corresponding to the current point cloud, which can fully consider the actual size of the azimuth of the root node of the current point cloud, and achieve more reasonable initialization processing of the prediction value. In other words, in the embodiment of the present application, the initialization of the prediction value in combination with the azimuth sampling information can improve the accuracy of the prediction effect, thereby improving the point cloud compression performance.
  • FIG. 15 is a schematic diagram of a structure of a decoder.
  • the decoder 200 may include: a decoding unit 211 and a second determining unit 212; wherein,
  • the decoding unit 211 is configured to decode the code stream
  • the second determination unit 212 is configured to determine the azimuth sampling information corresponding to the current point cloud; determine the initial prediction value corresponding to the current point cloud according to the azimuth sampling information corresponding to the current point cloud, and determine the prediction value of the midpoint of the current point cloud according to the initial prediction value.
  • the decoder 200 can also be regarded as a data processing mode (or “entropy decoder”), which is used to decode the values of the syntax elements to be decoded.
  • entropy decoder a data processing mode
  • a "unit" can be a part of a circuit, a part of a processor, a part of a program or software, etc., and of course it can also be a module, or it can be non-modular.
  • the components in this embodiment can be integrated into a processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
  • the above-mentioned integrated unit can be implemented in the form of hardware or in the form of a software functional 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-readable storage medium, which is applied to the decoder 200, and the computer-readable storage medium stores a computer program. When the computer program is executed by the second processor, the method described in any one of the above embodiments is implemented.
  • Figure 16 is a second schematic diagram of the composition structure of the decoder.
  • the decoder 200 may include: a second memory 221 and a second processor 222, a second communication interface 223 and a second bus system 224.
  • the second memory 221 and the second processor 222, and the second communication interface 223 are coupled together through the second bus system 224.
  • the second bus system 224 is used to realize the connection and communication between these components.
  • the second bus system 224 also includes a power bus, a control bus and a status signal bus. However, for the sake of clarity, various buses are marked as the second bus system 224 in Figure 12. Among them,
  • the second communication interface 223 is used for receiving and sending signals during the process of sending and receiving information with other external network elements;
  • the second memory 221 is used to store a computer program that can be run on the second processor
  • the second processor 222 is used to decode the code stream and determine the azimuth sampling information corresponding to the current point cloud when running the computer program; determine the initial prediction value corresponding to the current point cloud based on the azimuth sampling information corresponding to the current point cloud, and determine the prediction value of the midpoint of the current point cloud based on the initial prediction value.
  • the second memory 221 in the embodiment of the present application can be a volatile memory or a non-volatile memory, or can include both volatile and non-volatile memories.
  • the non-volatile memory can be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory.
  • the volatile memory can be a random access memory (RAM), which is used as an external cache.
  • RAM static RAM
  • DRAM dynamic RAM
  • SDRAM synchronous DRAM
  • DDRSDRAM double data rate synchronous DRAM
  • ESDRAM enhanced synchronous DRAM
  • SLDRAM synchronous link DRAM
  • DRRAM direct RAM bus RAM
  • the second processor 222 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the hardware integrated logic circuit or software instructions in the second processor 222.
  • the above-mentioned second processor 222 can be a general processor, a digital signal processor (Digital Signal Processor, DSP), an application specific integrated circuit (Application Specific Integrated Circuit, ASIC), a field 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 Field Programmable Gate Array
  • the methods, steps and logic block diagrams disclosed in the embodiments of the present application can be implemented or executed.
  • the general processor can be a microprocessor or the processor can also be any conventional processor, etc.
  • the steps of the method disclosed in the embodiments of the present application can be directly embodied as a hardware decoding processor to execute, or the hardware and software modules in the decoding processor can be executed.
  • the software module can be located in a mature storage medium in the field such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory or an electrically erasable programmable memory, a register, etc.
  • the storage medium is located in the second memory 221, and the second processor 222 reads the information in the second memory 221 and completes the steps of the above method in combination with its hardware.
  • the processing unit can be implemented in one or more application specific integrated circuits (Application Specific Integrated Circuits, ASIC), digital signal processors (Digital Signal Processing, DSP), digital signal processing devices (DSP Device, DSPD), programmable logic devices (Programmable Logic Device, PLD), field programmable gate arrays (Field-Programmable Gate Array, FPGA), general processors, controllers, microcontrollers, microprocessors, other electronic units for performing the functions described in this application or a combination thereof.
  • ASIC Application Specific Integrated Circuits
  • DSP Digital Signal Processing
  • DSP Device digital signal processing devices
  • PLD programmable logic devices
  • FPGA field programmable gate array
  • general processors controllers, microcontrollers, microprocessors, other electronic units for performing the functions described in this application or a combination thereof.
  • the technology described in this application can be implemented by a module (such as a process, function, etc.) that performs the functions described in this application.
  • the software code can be stored in a memory and executed by a processor.
  • the memory can be implemented in the processor or outside the processor.
  • the second processor 222 is further configured to execute any one of the methods described in the foregoing embodiments when running the computer program.
  • the present embodiment provides a decoder that decodes a code stream to determine the azimuth sampling information corresponding to the current point cloud; determines the initial prediction value corresponding to the current point cloud based on the azimuth sampling information corresponding to the current point cloud, and determines the prediction value of the midpoint of the current point cloud based on the initial prediction value.
  • the azimuth sampling information corresponding to the current point cloud in the process of initializing the prediction value of the current point cloud, can be used to determine the corresponding initial prediction value, which can fully consider the actual size of the azimuth of the root node of the current point cloud, and achieve more reasonable initialization processing of the prediction value.
  • the initialization of the prediction value in combination with the azimuth sampling information can improve the accuracy of the prediction effect, thereby improving the point cloud compression performance.
  • an embodiment of the present application also proposes a code stream, wherein the code stream is generated by bit encoding based on the information to be encoded; wherein the information to be encoded includes at least: initialization mode identification information, azimuth sampling information, radial distance information, quantization parameters, quantized prediction residual, and mode identification information.
  • the embodiment of the present application provides a coding and decoding method, a code stream, an encoder, a decoder and a storage medium.
  • the code stream is decoded to determine the azimuth sampling information corresponding to the current point cloud; the initial prediction value corresponding to the current point cloud is determined according to the azimuth sampling information corresponding to the current point cloud, and the prediction value of the midpoint of the current point cloud is determined according to the initial prediction value.
  • the azimuth sampling information corresponding to the current point cloud is determined, and the azimuth sampling information is written into the code stream; the initial prediction value corresponding to the current point cloud is determined according to the azimuth sampling information corresponding to the current point cloud, and the prediction value of the midpoint of the current point cloud is determined according to the initial prediction value.
  • the corresponding initial prediction value can be determined by the azimuth sampling information corresponding to the current point cloud, which can fully consider the actual size of the azimuth of the root node of the current point cloud, and realize more reasonable initialization processing of the prediction value. That is to say, in the embodiment of the present application, the initialization of the prediction value in combination with the azimuth sampling information can improve the accuracy of the prediction effect, thereby improving the point cloud compression performance.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

Embodiments of the present application disclose encoding and decoding methods, a code stream, an encoder, a decoder and a storage medium. At a decoding end, the code stream is decoded, and azimuth sampling information corresponding to a current point cloud is determined; according to the azimuth sampling information corresponding to the current point cloud, an initial prediction value corresponding to the current point cloud is determined, and a prediction value of a point in the current point cloud is determined according to the initial prediction value. At an encoding end, azimuth sampling information corresponding to the current point cloud is determined, and the azimuth sampling information is written into the code stream; according to the azimuth sampling information corresponding to the current point cloud, the initial prediction value corresponding to the current point cloud is determined, and the prediction value of the point in the current point cloud is determined according to the initial prediction value.

Description

编解码方法、码流、编码器、解码器以及存储介质Coding and decoding method, code stream, encoder, decoder and storage medium 技术领域Technical Field

本申请实施例涉及点云编解码技术领域,尤其涉及一种编解码方法、码流、编码器、解码器以及存储介质。The embodiments of the present application relate to the field of point cloud encoding and decoding technology, and in particular, to an encoding and decoding method, a bit stream, an encoder, a decoder, and a storage medium.

背景技术Background Art

在基于几何的点云压缩(Geometry-based Point Cloud Compression,G-PCC)编解码框架中,点云的几何信息和点云中的点所对应的属性信息是分开进行编码的。其中,对于G-PCC编解码框架而言,几何信息的编解码可以包括基于八叉树的几何编解码和基于预测树的几何编解码。In the geometry-based point cloud compression (G-PCC) codec framework, the geometry information of the point cloud and the attribute information corresponding to the points in the point cloud are encoded separately. Among them, for the G-PCC codec framework, the coding and decoding of the geometry information can include octree-based geometry coding and decoding and prediction tree-based geometry coding and decoding.

在基于预测树的几何编解码的过程中,相关技术虽然实现了对预测值的初始化,但是初始化后的预测值并不合理,降低了预测效果的准确性,进而影响了点云压缩性能。In the process of geometric encoding and decoding based on prediction trees, although the relevant technology realizes the initialization of prediction values, the initialized prediction values are not reasonable, which reduces the accuracy of the prediction effect and thus affects the point cloud compression performance.

发明内容Summary of the invention

本申请实施例提供一种编解码方法、码流、编码器、解码器以及存储介质,能够提高预测效果的准确性,从而提升了点云压缩性能。The embodiments of the present application provide a coding and decoding method, a bit stream, an encoder, a decoder and a storage medium, which can improve the accuracy of the prediction effect, thereby improving the point cloud compression performance.

本申请实施例的技术方案可以如下实现:The technical solution of the embodiment of the present application can be implemented as follows:

第一方面,本申请实施例提供了一种解码方法,应用于解码器,该方法包括:In a first aspect, an embodiment of the present application provides a decoding method, which is applied to a decoder, and the method includes:

解码码流,确定当前点云对应的方位角采样信息;Decode the code stream to determine the azimuth sampling information corresponding to the current point cloud;

根据所述当前点云对应的方位角采样信息确定所述当前点云对应的初始预测值,并根据所述初始预测值确定所述当前点云中点的预测值。An initial prediction value corresponding to the current point cloud is determined according to the azimuth sampling information corresponding to the current point cloud, and a prediction value of a midpoint of the current point cloud is determined according to the initial prediction value.

第二方面,本申请实施例提供了一种编码方法,应用于编码器,该方法包括:In a second aspect, an embodiment of the present application provides an encoding method, which is applied to an encoder, and the method includes:

确定当前点云对应的方位角采样信息,并将所述方位角采样信息写入码流;Determine the azimuth sampling information corresponding to the current point cloud, and write the azimuth sampling information into the bitstream;

根据所述当前点云对应的方位角采样信息确定所述当前点云对应的初始预测值,并根据所述初始预测值确定所述当前点云中点的预测值。An initial prediction value corresponding to the current point cloud is determined according to the azimuth sampling information corresponding to the current point cloud, and a prediction value of a midpoint of the current point cloud is determined according to the initial prediction value.

第三方面,本申请实施例提供了一种码流,码流是根据待编码信息进行比特编码生成的;其中,待编码信息至少包括:In a third aspect, an embodiment of the present application provides a code stream, which is generated by bit encoding according to information to be encoded; wherein the information to be encoded includes at least:

初始化模式标识信息,方位角采样信息,径向距离信息,量化参数,量化后的预测残差,模式标识信息。Initialize mode identification information, azimuth sampling information, radial distance information, quantization parameters, quantized prediction residual, and mode identification information.

第四方面,本申请实施例提供了一种编码器,编码器包括:第一确定单元和编码单元;其中,In a fourth aspect, an embodiment of the present application provides an encoder, the encoder comprising: a first determining unit and an encoding unit; wherein,

所述第一确定单元,配置为确定所述当前点云对应的方位角采样信息;The first determining unit is configured to determine azimuth sampling information corresponding to the current point cloud;

所述编码单元,配置为将所述方位角采样信息写入码流;The encoding unit is configured to write the azimuth sampling information into a bit stream;

所述第一确定单元,还配置为根据所述当前点云对应的方位角采样信息确定所述当前点云对应的初始预测值,并根据所述初始预测值确定所述当前点云中点的预测值。The first determination unit is further configured to determine an initial prediction value corresponding to the current point cloud according to azimuth sampling information corresponding to the current point cloud, and determine a prediction value of a midpoint of the current point cloud according to the initial prediction value.

第五方面,本申请实施例提供了一种编码器,编码器包括第一存储器和第一处理器;其中,In a fifth aspect, an embodiment of the present application provides an encoder, the encoder comprising a first memory and a first processor; wherein,

所述第一存储器,用于存储能够在所述第一处理器上运行的计算机程序;The first memory is used to store a computer program that can be run on the first processor;

所述第一处理器,用于在运行所述计算机程序时,执行如上所述的编码方法。The first processor is used to execute the encoding method as described above when running the computer program.

第六方面,本申请实施例提供了一种解码器,解码器包括:解码单元和第二确定单元;其中,In a sixth aspect, an embodiment of the present application provides a decoder, the decoder comprising: a decoding unit and a second determining unit; wherein:

所述解码单元,配置为解码码流;The decoding unit is configured to decode the code stream;

所述第二确定单元,配置为确定所述当前点云对应的方位角采样信息;根据所述当前点云对应的方位角采样信息确定所述当前点云对应的初始预测值,并根据所述初始预测值确定所述当前点云中点的预测值。The second determination unit is configured to determine the azimuth sampling information corresponding to the current point cloud; determine the initial prediction value corresponding to the current point cloud according to the azimuth sampling information corresponding to the current point cloud, and determine the prediction value of the midpoint of the current point cloud according to the initial prediction value.

第七方面,本申请实施例提供了一种解码器,解码器包括第二存储器和第二处理器;其中,In a seventh aspect, an embodiment of the present application provides a decoder, the decoder comprising a second memory and a second processor; wherein:

所述第二存储器,用于存储能够在所述第二处理器上运行的计算机程序;The second memory is used to store a computer program that can be run on the second processor;

所述第二处理器,用于在运行所述计算机程序时,执行如上所述的解码方法。The second processor is used to execute the decoding method as described above when running the computer program.

第八方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,所述计算机程序被执行时实现如第一方面所述的解码方法、或者实现如第二方面所述的编码方法。 In an eighth aspect, an embodiment of the present application provides a computer-readable storage medium, which stores a computer program. When the computer program is executed, it implements the decoding method as described in the first aspect, or implements the encoding method as described in the second aspect.

本申请实施例提供了一种编解码方法、码流、编码器、解码器以及存储介质,在解码端,解码码流,确定当前点云对应的方位角采样信息;根据当前点云对应的方位角采样信息确定当前点云对应的初始预测值,并根据初始预测值确定当前点云中点的预测值。在编码端,确定当前点云对应的方位角采样信息,并将方位角采样信息写入码流;根据当前点云对应的方位角采样信息确定当前点云对应的初始预测值,并根据初始预测值确定当前点云中点的预测值。由此可见,在本申请的实施例中,在对当前点云的预测值进行初始化的过程中,可以选择通过当前点云对应的方位角采样信息来确定对应的初始预测值,能够充分考虑到当前点云的根节点的方位角的实际大小,实现更为合理的预测值的初始化处理。也就是说,在本申请的实施例中,结合方位角采样信息进行预测值的初始化,能够提高预测效果的准确性,从而提升了点云压缩性能。The embodiment of the present application provides a coding and decoding method, a code stream, an encoder, a decoder and a storage medium. At the decoding end, the code stream is decoded to determine the azimuth sampling information corresponding to the current point cloud; the initial prediction value corresponding to the current point cloud is determined according to the azimuth sampling information corresponding to the current point cloud, and the prediction value of the midpoint of the current point cloud is determined according to the initial prediction value. At the encoding end, the azimuth sampling information corresponding to the current point cloud is determined, and the azimuth sampling information is written into the code stream; the initial prediction value corresponding to the current point cloud is determined according to the azimuth sampling information corresponding to the current point cloud, and the prediction value of the midpoint of the current point cloud is determined according to the initial prediction value. It can be seen that in the embodiment of the present application, in the process of initializing the prediction value of the current point cloud, the corresponding initial prediction value can be determined by the azimuth sampling information corresponding to the current point cloud, which can fully consider the actual size of the azimuth of the root node of the current point cloud, and realize more reasonable initialization processing of the prediction value. That is to say, in the embodiment of the present application, the initialization of the prediction value in combination with the azimuth sampling information can improve the accuracy of the prediction effect, thereby improving the point cloud compression performance.

附图说明BRIEF DESCRIPTION OF THE DRAWINGS

图1为本申请实施例提供的一种点云编解码的网络架构示意图;FIG1 is a schematic diagram of a network architecture of point cloud encoding and decoding provided in an embodiment of the present application;

图2为一种G-PCC编码器的组成框架示意图;FIG. 2 is a schematic diagram of a composition framework of a G-PCC encoder;

图3为一种G-PCC解码器的组成框架示意图;FIG3 is a schematic diagram of a composition framework of a G-PCC decoder;

图4为几何编码的示意图;FIG4 is a schematic diagram of geometric coding;

图5为几何解码的示意图;FIG5 is a schematic diagram of geometric decoding;

图6为几何信息的排列方式示意图;FIG6 is a schematic diagram of an arrangement of geometric information;

图7为本申请实施例提出的点云解码方法的实现流程示意图一;FIG. 7 is a schematic diagram of a first implementation flow of a point cloud decoding method proposed in an embodiment of the present application;

图8为本申请实施例提出的点云解码方法的实现流程示意图二;FIG8 is a second schematic diagram of the implementation flow of the point cloud decoding method proposed in an embodiment of the present application;

图9为本申请实施例提出的点云解码方法的实现流程示意图三;FIG9 is a third schematic diagram of the implementation flow of the point cloud decoding method proposed in an embodiment of the present application;

图10为本申请实施例提出的点云编码方法的实现流程示意图一;FIG10 is a schematic diagram of a first implementation flow of a point cloud encoding method proposed in an embodiment of the present application;

图11为本申请实施例提出的点云编码方法的实现流程示意图二;FIG. 11 is a second schematic diagram of the implementation flow of the point cloud encoding method proposed in an embodiment of the present application;

图12为本申请实施例提出的点云编码方法的实现流程示意图三;FIG. 12 is a third schematic diagram of the implementation flow of the point cloud encoding method proposed in the embodiment of the present application;

图13为编码器的组成结构示意图一;FIG13 is a schematic diagram of the structure of the encoder;

图14为编码器的组成结构示意图二;FIG14 is a second schematic diagram of the structure of the encoder;

图15为解码器的组成结构示意图一;FIG15 is a schematic diagram of the structure of a decoder;

图16为解码器的组成结构示意图二。FIG. 16 is a second schematic diagram of the structure of the decoder.

具体实施方式DETAILED DESCRIPTION

为了能够更加详尽地了解本申请实施例的特点与技术内容,下面结合附图对本申请实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本申请实施例。In order to enable a more detailed understanding of the features and technical contents of the embodiments of the present application, the implementation of the embodiments of the present application is described in detail below in conjunction with the accompanying drawings. The attached drawings are for reference only and are not used to limit the embodiments of the present application.

除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。Unless otherwise defined, all technical and scientific terms used herein have the same meaning as those commonly understood by those skilled in the art to which this application belongs. The terms used herein are only for the purpose of describing the embodiments of this application and are not intended to limit this application.

在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。还需要指出,本申请实施例所涉及的术语“第一\第二\第三”仅是用于区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。In the following description, reference is made to "some embodiments", which describe a subset of all possible embodiments, but it is understood that "some embodiments" may be the same subset or different subsets of all possible embodiments, and may be combined with each other without conflict. It should also be noted that the terms "first\second\third" involved in the embodiments of the present application are only used to distinguish similar objects and do not represent a specific ordering of the objects. It is understandable that "first\second\third" may be interchanged in a specific order or sequence where permitted, so that the embodiments of the present application described herein can be implemented in an order other than that illustrated or described herein.

对本申请实施例进行进一步详细说明之前,先对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释:Before further describing the embodiments of the present application in detail, the nouns and terms involved in the embodiments of the present application are described first. The nouns and terms involved in the embodiments of the present application are subject to the following interpretations:

点云压缩(Point Cloud Compression,PCC);Point Cloud Compression (PCC);

基于几何的点云压缩(Geometry-based Point Cloud Compression,G-PCC或GPCC);Geometry-based Point Cloud Compression (G-PCC or GPCC);

基于视频的点云压缩(Video-based Point Cloud Compression,V-PCC或VPCC);Video-based Point Cloud Compression (V-PCC or VPCC);

八叉树(Octree);Octree;

帧内预测(Intra Prediction);Intra Prediction;

查找表(Look Up Table,LUT);Look Up Table (LUT);

红绿蓝(Red-Green-Blue,RGB);Red-Green-Blue (RGB);

亮度色度(Luminance-Chrominance,YUV);Luminance-Chrominance (YUV);

细节层次(Level of Detail,LOD);Level of Detail (LOD);

预测变换(Predicting Transform); Predicting Transform;

提升变换(Lifting Transform);Lifting Transform;

区域自适应分层变换(Region Adaptive Hierarchal Transform,RAHT);Region Adaptive Hierarchal Transform (RAHT);

基于上下文模型的自适应二进制算术编码(Context-based Adaptive Binary Arithmetic Coding,CABAC)。Context-based Adaptive Binary Arithmetic Coding (CABAC) is a context-based adaptive binary arithmetic coding (CABAC).

可以理解,点云(Point Cloud)是物体表面的三维表现形式,通过光电雷达、激光雷达、激光扫描仪、多视角相机等采集设备,可以采集得到物体表面的点云(数据)。It can be understood that point cloud is a three-dimensional representation of the surface of an object. Point cloud (data) of the surface of an object can be collected through acquisition equipment such as photoelectric radar, lidar, laser scanner, and multi-view camera.

另外,点云是指海量三维点的集合,点云中的点可以包括点的位置信息和点的属性信息。例如,点的位置信息可以是点的三维坐标信息。点的位置信息也可称为点的几何信息。例如,点的属性信息可包括颜色信息和/或反射率等等。例如,颜色信息可以是任意一种色彩空间上的信息。例如,颜色信息可以是RGB信息。其中,R表示红色(Red,R),G表示绿色(Green,G),B表示蓝色(Blue,B)。再如,颜色信息可以是亮度色度(YCbCr,YUV)信息。其中,Y表示明亮度,Cb(U)表示蓝色色度,Cr(V)表示红色色度。In addition, a point cloud refers to a collection of massive three-dimensional points, and the points in the point cloud may include the location information of the points and the attribute information of the points. For example, the location information of the points may be the three-dimensional coordinate information of the points. The location information of the points may also be referred to as the geometric information of the points. For example, the attribute information of the points may include color information and/or reflectivity, etc. For example, the color information may be information on any color space. For example, the color information may be RGB information. Among them, R represents red (Red, R), G represents green (Green, G), and B represents blue (Blue, B). For another example, the color information may be brightness and chromaticity (YCbCr, YUV) information. Among them, Y represents brightness, Cb (U) represents blue chromaticity, and Cr (V) represents red chromaticity.

根据激光测量原理得到的点云,点云中的点可以包括点的三维坐标信息和点的激光反射强度(reflectance)。再如,根据摄影测量原理得到的点云,点云中的点可以可包括点的三维坐标信息和点的颜色信息。再如,结合激光测量和摄影测量原理得到点云,点云中的点可以可包括点的三维坐标信息、点的激光反射强度(reflectance)和点的颜色信息。For a point cloud obtained according to the principle of laser measurement, the points in the point cloud may include the three-dimensional coordinate information of the points and the laser reflection intensity (reflectance) of the points. For another example, for a point cloud obtained according to the principle of photogrammetry, the points in the point cloud may include the three-dimensional coordinate information of the points and the color information of the points. For another example, a point cloud obtained by combining the principles of laser measurement and photogrammetry may include the three-dimensional coordinate information of the points, the laser reflection intensity (reflectance) of the points, and the color information of the points.

点云可以按获取的途径分为:Point clouds can be divided into the following categories according to the way they are obtained:

第一类静态点云:即物体是静止的,获取点云的设备也是静止的;The first type of static point cloud: the object is stationary, and the device that obtains the point cloud is also stationary;

第二类动态点云:物体是运动的,但获取点云的设备是静止的;The second type of dynamic point cloud: the object is moving, but the device that obtains the point cloud is stationary;

第三类动态获取点云:获取点云的设备是运动的。The third type of dynamic point cloud acquisition: the device that acquires the point cloud is moving.

例如,按点云的用途分为两大类:For example, point clouds can be divided into two categories according to their usage:

类别一:机器感知点云,其可以用于自主导航系统、实时巡检系统、地理信息系统、视觉分拣机器人、抢险救灾机器人等场景;Category 1: Machine perception point cloud, which can be used in autonomous navigation systems, real-time inspection systems, geographic information systems, visual sorting robots, disaster relief robots, etc.

类别二:人眼感知点云,其可以用于数字文化遗产、自由视点广播、三维沉浸通信、三维沉浸交互等点云应用场景。Category 2: Point cloud perceived by the human eye, which can be used in point cloud application scenarios such as digital cultural heritage, free viewpoint broadcasting, 3D immersive communication, and 3D immersive interaction.

由于点云是海量点的集合,存储点云不仅会消耗大量的内存,而且不利于传输,也没有这么大的带宽可以支持将点云不经过压缩直接在网络层进行传输,因此,需要对点云进行压缩。Since point clouds are a collection of massive points, storing point clouds not only consumes a lot of memory, but is also not conducive to transmission. There is also not enough bandwidth to support direct transmission of point clouds at the network layer without compression. Therefore, point clouds need to be compressed.

也就说,随着硬件处理能力的提升和计算机视觉的飞速发展,三维点云成为继音频、图像和视频之后的新一代沉浸式多媒体,被广泛的应用于虚拟现实、增强现实、自动驾驶和环境建模等应用中。然而点云通常具有较大的数据量,十分不利于其传输及存储,因此需要对点云进行高效的编解码。In other words, with the improvement of hardware processing power and the rapid development of computer vision, 3D point cloud has become a new generation of immersive multimedia after audio, image and video, and is widely used in applications such as virtual reality, augmented reality, autonomous driving and environmental modeling. However, point cloud usually has a large amount of data, which is not conducive to its transmission and storage, so it is necessary to efficiently encode and decode the point cloud.

截止目前,可对点云进行压缩的点云编码框架可以是运动图像专家组(Moving Picture Experts Group,MPEG)提供的G-PCC编解码框架或V-PCC编解码框架,也可以是音视频编码标准(Audio Video Standard,AVS)提供的AVS-PCC编解码框架。其中,G-PCC编解码框架可用于针对第一类静态点云和第三类动态获取点云进行压缩,V-PCC编解码框架可用于针对第二类动态点云进行压缩。在本申请的实施例中,这里主要是针对G-PCC编解码框架进行描述。Up to now, the point cloud coding framework that can compress the point cloud can be the G-PCC codec framework or the V-PCC codec framework provided by the Moving Picture Experts Group (MPEG), or the AVS-PCC codec framework provided by the Audio Video Standard (AVS). Among them, the G-PCC codec framework can be used to compress the first type of static point cloud and the third type of dynamically acquired point cloud, and the V-PCC codec framework can be used to compress the second type of dynamic point cloud. In the embodiments of the present application, the G-PCC codec framework is mainly described here.

本申请实施例提供了一种包含解码方法和编码方法的点云编解码系统的网络架构,图1为本申请实施例提供的一种点云编解码的网络架构示意图。如图1所示,该网络架构包括一个或多个电子设备13至1N和通信网络01,其中,电子设备13至1N可以通过通信网络01进行视频交互。电子设备在实施的过程中可以为各种类型的具有点云编解码功能的设备,例如,所述电子设备可以包括手机、平板电脑、个人计算机、个人数字助理、导航仪、数字电话、视频电话、电视机、传感设备、服务器等,本申请实施例不作限制。其中,本申请实施例中的解码器或编码器就可以为上述电子设备。The embodiment of the present application provides a network architecture of a point cloud encoding and decoding system including a decoding method and an encoding method. FIG1 is a schematic diagram of a network architecture of a point cloud encoding and decoding provided by the embodiment of the present application. As shown in FIG1 , the network architecture includes one or more electronic devices 13 to 1N and a communication network 01, wherein the electronic devices 13 to 1N can perform video interaction through the communication network 01. During the implementation process, the electronic device can be various types of devices with point cloud encoding and decoding functions. For example, the electronic device can include a mobile phone, a tablet computer, a personal computer, a personal digital assistant, a navigator, a digital phone, a video phone, a television, a sensor device, a server, etc., which is not limited by the embodiment of the present application. Among them, the decoder or encoder in the embodiment of the present application can be the above-mentioned electronic device.

其中,本申请实施例中的电子设备具有点云编解码功能,一般包括点云编码器(即编码器)和点云解码器(即解码器)。Among them, the electronic device in the embodiment of the present application has a point cloud encoding and decoding function, generally including a point cloud encoder (ie, encoder) and a point cloud decoder (ie, decoder).

下面以G-PCC编解码框架为例进行相关技术的说明。The following uses the G-PCC codec framework as an example to illustrate the relevant technology.

可以理解,在点云G-PCC编解码框架中,针对待编码的点云数据,首先通过片(slice)划分,将点云数据划分为多个slice。在每一个slice中,点云的几何信息和每个点云所对应的属性信息是分开进行编码的。It can be understood that in the point cloud G-PCC encoding and decoding framework, for the point cloud data to be encoded, the point cloud data is first divided into multiple slices by slice division. In each slice, the geometric information of the point cloud and the attribute information corresponding to each point cloud are encoded separately.

图2示出了一种G-PCC编码器的组成框架示意图。如图2所示,在几何编码过程中,对几何信息进行坐标转换,使点云全都包含在一个包围盒(Bounding Box)中,然后再进行量化,这一步量化主要起到缩放的作用,由于量化取整,使得一部分点云的几何信息相同,于是再基于参数来决定是否移除重复点,量化和移除重复点这一过程又被称为体素化过程。接着对Bounding Box进行八叉树划分或者预测树构建。在该过程中,针对划分的叶子结点中的点进行算术编码,生成二进制的几何比特流;或者,针对划分产生的交点(Vertex)进行算术编码(基于交点进行表面拟合),生成二进制的几何比特流。在属性编码过程中,几何编码完成,对几何信息进行重建后,需要先进行颜色转换,将颜色信息(即属性信息)从RGB颜色空间转换到YUV颜色空间。然后,利用重建的几何信息对点云重新着色,使得未编码的属性信息与重建的几何信息对应起来。属性编码主要针对颜色信息进行,在颜色信息编码过程中,主要有两种变换方法,一是依赖于LOD划分的基于距离的提升变换,二是直接进行RAHT变换,这两种方法都会将颜色信息从空间域转换到频域,通过变换得到高频系数和低频系数,最后对系数进行量化,再对量化系数进行算术编码,可以生成二进制的属性比特流。FIG2 shows a schematic diagram of the composition framework of a G-PCC encoder. As shown in FIG2, in the geometric encoding process, the geometric information is transformed so that all point clouds are contained in a bounding box, and then quantized. This step of quantization mainly plays a role in scaling. Due to the quantization rounding, the geometric information of a part of the point cloud is the same, so whether to remove duplicate points is determined based on parameters. The process of quantization and removal of duplicate points is also called voxelization. Then, the Bounding Box is divided into octrees or a prediction tree is constructed. In this process, arithmetic coding is performed on the points in the leaf nodes of the division to generate a binary geometric bit stream; or, arithmetic coding is performed on the intersection points (Vertex) generated by the division (surface fitting is performed based on the intersection points) to generate a binary geometric bit stream. In the attribute encoding process, after the geometric encoding is completed and the geometric information is reconstructed, color conversion is required first to convert the color information (i.e., attribute information) from the RGB color space to the YUV color space. Then, the point cloud is recolored using the reconstructed geometric information so that the uncoded attribute information corresponds to the reconstructed geometric information. Attribute encoding is mainly performed on color information. In the process of color information encoding, there are two main transformation methods. One is the distance-based lifting transformation that relies on LOD division, and the other is direct RAHT transformation. Both methods convert color information from the spatial domain to the frequency domain, and obtain high-frequency coefficients and low-frequency coefficients through transformation. Finally, the coefficients are quantized and then arithmetic coding is performed on the quantized coefficients to generate a binary attribute bit stream.

图3示出了一种G-PCC解码器的组成框架示意图。如图3所示,针对所获取的二进制比特流,首先对二进制比特流中的几何比特流和属性比特流分别进行独立解码。在对几何比特流的解码时,通过算术解码-重构八叉树/重构预测树-重建几何-坐标逆转换,得到点云的几何信息;在对属性比特流的解码时,通过算术解码-反量化-LOD划分/RAHT-颜色逆转换,得到点云的属性信息,基于几何信息和属性信息还原待编码的点云数据(即输出点云)。FIG3 shows a schematic diagram of the composition framework of a G-PCC decoder. As shown in FIG3, for the acquired binary bit stream, the geometric bit stream and the attribute bit stream in the binary bit stream are first decoded independently. When decoding the geometric bit stream, the geometric information of the point cloud is obtained through arithmetic decoding-reconstruction of the octree/reconstruction of the prediction tree-reconstruction of the geometry-coordinate inverse conversion; when decoding the attribute bit stream, the attribute information of the point cloud is obtained through arithmetic decoding-inverse quantization-LOD partitioning/RAHT-color inverse conversion, and the point cloud data to be encoded (i.e., the output point cloud) is restored based on the geometric information and attribute information.

需要说明的是,图4为几何编码的示意图,如图4所示,对于几何编码过程,首先对几何信息进行坐标转换,使点云全都包含在一个由两个极值点(0,0,0)和(2d,2d,2d)决定的包围盒(bounding box)中。然后进行体素化,即:量化、取整、移除重复点,其中是否移除重复点是根据编码器参数来决定的。目前G-PCC的几何编码可分为:基于八叉树的几何编码和基于预测树的几何编码。It should be noted that FIG4 is a schematic diagram of geometric coding. As shown in FIG4, for the geometric coding process, the geometric information is firstly transformed so that all point clouds are contained in a bounding box determined by two extreme points (0, 0, 0) and ( 2d , 2d , 2d). Then voxelization is performed, that is, quantization, rounding, and removal of duplicate points, wherein whether to remove duplicate points is determined according to the encoder parameters. At present, the geometric coding of G-PCC can be divided into: octree-based geometric coding and prediction tree-based geometric coding.

在基于预测树的几何编码中,首先对输入的几何信息进行排序。目前G-PCC的标准测试条件默认的排序方式是基于方位角进行排序。首先根据输入点云的笛卡尔坐标(x,y,z)计算其柱面坐标(r,θ),其中r是点的径向距离,也可称之为半径;是点的方位角;θ是点所属的激光束的俯仰角。然后按照r,tanθ的顺序进行排序。首先比较的大小,如果相同,则比较r,如果r相同,则比较tanθ。最终完成整个点云的重新排序。根据是否开启角度模式,预测树几何编码可以分为基于方位角的几何预测编码方案和基于KD-tree的几何预测编码方案。In the prediction tree-based geometric coding, the input geometric information is first sorted. The default sorting method of the current G-PCC standard test conditions is based on azimuth. First, the cylindrical coordinates (r, y, z) of the input point cloud are calculated based on the Cartesian coordinates (x, y, z). θ), where r is the radial distance of the point, also known as the radius; is the azimuth angle of the point; θ is the elevation angle of the laser beam to which the point belongs. Then according to r, tanθ are sorted in order. First compare If the size If they are the same, then compare r. If r is the same, then compare tanθ. Finally, the entire point cloud is reordered. Depending on whether the angle mode is turned on, the prediction tree geometry coding can be divided into an azimuth-based geometry prediction coding scheme and a KD-tree-based geometry prediction coding scheme.

在基于方位角的几何预测编码方案中,在构建预测树时,编码器会先将输入点云从笛卡尔坐标(x,y,z)转换到柱面坐标(r,θ)。然后将输入点云中的每个点依照其俯仰角划分到不同的激光束上。由于在对输入的几何信息进行排序时,默认采用基于方位角的排序方式,因此整个点云的几何信息是按照方位角从小到大的顺序排列的。对于第i束激光,其被访问到的第一个点是属于该束激光的所有点中方位角最小的点。且第i束后续被访问到的点的父节点均是同一束激光中比自身方位角小的第一个点。第i束激光的第一个点的父节点为第i-1束激光的第一个点。对于第0束激光的第一个点,由于其没有父节点,因此作为整棵树的根节点。In the azimuth-based geometric prediction coding scheme, when building the prediction tree, the encoder first converts the input point cloud from Cartesian coordinates (x, y, z) to cylindrical coordinates (r, θ). Each point in the input point cloud is then divided into different laser beams according to its pitch angle. Since the azimuth-based sorting method is used by default when sorting the input geometric information, the geometric information of the entire point cloud is arranged in ascending order of azimuth. For the i-th laser beam, the first point visited is the point with the smallest azimuth among all the points belonging to the laser beam. And the parent node of the points subsequently visited by the i-th beam is the first point in the same laser beam with a smaller azimuth than itself. The parent node of the first point of the i-th laser beam is the first point of the i-1-th laser beam. For the first point of the 0th laser beam, since it has no parent node, it serves as the root node of the entire tree.

接下来按照深度优先的顺序对预测树中的每个节点进行预测编码。对于待编码点,首先根据帧内预测算法或帧间预测算法确定几何信息的预测值。其中在帧内预测中,采用预测列表对待编码点进行预测。而对于帧间预测,则在前一已编码帧中寻找预测点对待编码点进行预测。然后通过率失真优化选取码率最小的预测值作为待编(解)码点的预测值。接着利用节点几何信息的真实值与预测值做差得到预测残差,并利用量化参数对预测残差进行量化。最后对量化参数、选取的预测值索引、预测残差等信息进行编码,生成二进制码流。Next, predictive coding is performed on each node in the prediction tree in a depth-first order. For the point to be coded, the predicted value of the geometric information is first determined according to the intra-frame prediction algorithm or the inter-frame prediction algorithm. In intra-frame prediction, a prediction list is used to predict the point to be coded. For inter-frame prediction, the prediction point is found in the previous coded frame to predict the point to be coded. Then, the prediction value with the minimum bit rate is selected as the prediction value of the code point to be coded (decoded) through rate-distortion optimization. Then, the prediction residual is obtained by subtracting the actual value of the node geometry information from the predicted value, and the prediction residual is quantized using the quantization parameter. Finally, the quantization parameter, the selected prediction value index, the prediction residual and other information are encoded to generate a binary code stream.

相应的,图5为几何解码的示意图,如图5所示,对于几何解码过程,解码是编码的反过程。在基于预测树的几何解码中,对于待解码点,首先解码得到每个节点对应的量化系数以及预测索引,根据预测索引唯一确定对应的预测值;然后解码几何信息的预测残差,并对其进行反量化;接着根据预测值和预测残差恢复得到待解码点的几何重构信息;然后对得到的重建几何信息进行坐标反变换,得到最终的重建几何信息。Correspondingly, FIG5 is a schematic diagram of geometric decoding. As shown in FIG5, for the geometric decoding process, decoding is the reverse process of encoding. In the prediction tree-based geometric decoding, for the point to be decoded, the quantization coefficient and prediction index corresponding to each node are first decoded, and the corresponding prediction value is uniquely determined according to the prediction index; then the prediction residual of the geometric information is decoded and inversely quantized; then the geometric reconstruction information of the point to be decoded is restored according to the prediction value and the prediction residual; then the coordinate inverse transformation of the obtained reconstructed geometric information is performed to obtain the final reconstructed geometric information.

需要说明的是,在基于方位角构建预测树时,首先,对原始点云进行重排序以更高效地构建预测树,可用的排序方法有无序、莫顿序、方位角序和径向距离序,目前,默认的排序方法是按方位角排序,即依次根据方位角、径向距离和俯仰角正切值对各点进行排序。It should be noted that when building a prediction tree based on azimuth, first, the original point cloud is reordered to build the prediction tree more efficiently. The available sorting methods are unordered, Morton order, azimuth order, and radial distance order. At present, the default sorting method is to sort by azimuth, that is, to sort the points according to azimuth, radial distance, and tangent value of pitch angle in turn.

然后,建立预测树结构。编码器会先将输入点云从笛卡尔坐标(x,y,z)转换到柱面坐标(r,θ)。然后将输入点云中的每个点依照其俯仰角划分到不同的激光束上,此时(r,θ)可以转换为(r,i),其中i表示激光束的索引。由于在对输入的几何信息进行排序时,默认采用基于方位角的排序方式,因此整个点云的几何信息是按照方位角从小到大的顺序排列的。Then, the prediction tree structure is established. The encoder first converts the input point cloud from Cartesian coordinates (x, y, z) to cylindrical coordinates (r, θ). Then each point in the input point cloud is divided into different laser beams according to its pitch angle. θ) can be converted to (r, i), where i represents the index of the laser beam. Since the default sorting method based on azimuth is used when sorting the input geometric information, the geometric information of the entire point cloud is arranged in ascending order of azimuth.

图6为几何信息的排列方式示意图,如图6所示,对于第i束激光,其被访问到的第一个点是属于该束激光的所有点中方位角最小的点。且第i束后续被访问到的点的父节点均是同一束激光中比自身方位角小的第一个点。第i束激光的第一个点的父节点为第i-1束激光的第一个点。对于第0束激光的第一个点,由于其没有父节点,因此作为整棵树的根节点。 FIG6 is a schematic diagram of the arrangement of geometric information. As shown in FIG6 , for the i-th laser beam, the first point visited is the point with the smallest azimuth angle among all the points belonging to the laser beam. And the parent node of the points subsequently visited by the i-th laser beam is the first point with a smaller azimuth angle than itself in the same laser beam. The parent node of the first point of the i-th laser beam is the first point of the i-1-th laser beam. For the first point of the 0-th laser beam, since it has no parent node, it serves as the root node of the entire tree.

接下来,首先从根节点开始遍历预测树中的每个节点,通过选取不同的预测值对节点的几何信息进行预测,得到相应的预测残差并进行量化。最后对量化参数、选取的预测值索引、预测残差等信息进行编码,生成二进制码流。Next, we first traverse each node in the prediction tree starting from the root node, predict the geometric information of the node by selecting different prediction values, obtain the corresponding prediction residual and quantize it. Finally, we encode the quantization parameter, the selected prediction value index, the prediction residual and other information to generate a binary code stream.

一般情况下,输入点云的柱面坐标(r,i)的预测值初始化为(rmin,0,0)。当待编(解)码点是预测树的根节点时,其柱面坐标(r,i)的预测值为(rmin,0,0),其中rmin是当前输入点云的半径最小值,在编码端遍历得到,通过pgeom_min_radius传送到解码端。由于方位角在(-π,π]的范围内,考虑到输入点云的几何信息是按照方位角从小到大的顺序排列的,因此根节点的方位角非常接近-π。用0作为根节点方位角的预测值是不合理的。In general, the cylindrical coordinates of the input point cloud (r, i) is initialized to (r min , 0, 0). When the code point to be encoded (decoded) is the root node of the prediction tree, its cylindrical coordinates (r, i) is (r min , 0, 0), where r min is the minimum radius of the current input point cloud, which is obtained by traversing at the encoder and transmitted to the decoder through pgeom_min_radius. Since the azimuth is in the range of (-π, π], considering that the geometric information of the input point cloud is arranged in ascending order of azimuth, the azimuth of the root node is very close to -π. It is unreasonable to use 0 as the predicted value of the root node azimuth.

由此可见,常见的点云编解码技术,虽然实现了对预测值的初始化,但是初始化后的预测值并不合理,降低了预测效果的准确性,进而影响了点云压缩性能。It can be seen that although the common point cloud encoding and decoding technology has achieved the initialization of the prediction value, the initialization prediction value is not reasonable, which reduces the accuracy of the prediction effect and further affects the point cloud compression performance.

为了解决上述问题,在本申请的实施例中,在解码端,解码码流,确定当前点云对应的方位角采样信息;根据当前点云对应的方位角采样信息确定当前点云对应的初始预测值,并根据初始预测值确定当前点云中点的预测值。在编码端,确定当前点云对应的方位角采样信息,并将方位角采样信息写入码流;根据当前点云对应的方位角采样信息确定当前点云对应的初始预测值,并根据初始预测值确定当前点云中点的预测值。由此可见,在本申请的实施例中,在对当前点云的预测值进行初始化的过程中,可以选择通过当前点云对应的方位角采样信息来确定对应的初始预测值,能够充分考虑到当前点云的根节点的方位角的实际大小,实现更为合理的预测值的初始化处理。也就是说,在本申请的实施例中,结合方位角采样信息进行预测值的初始化,能够提高预测效果的准确性,从而提升了点云压缩性能。In order to solve the above problems, in an embodiment of the present application, at the decoding end, the code stream is decoded to determine the azimuth sampling information corresponding to the current point cloud; the initial prediction value corresponding to the current point cloud is determined according to the azimuth sampling information corresponding to the current point cloud, and the prediction value of the midpoint of the current point cloud is determined according to the initial prediction value. At the encoding end, the azimuth sampling information corresponding to the current point cloud is determined, and the azimuth sampling information is written into the code stream; the initial prediction value corresponding to the current point cloud is determined according to the azimuth sampling information corresponding to the current point cloud, and the prediction value of the midpoint of the current point cloud is determined according to the initial prediction value. It can be seen that in the embodiment of the present application, in the process of initializing the prediction value of the current point cloud, the corresponding initial prediction value can be determined by the azimuth sampling information corresponding to the current point cloud, which can fully consider the actual size of the azimuth of the root node of the current point cloud, and realize more reasonable initialization processing of the prediction value. That is to say, in the embodiment of the present application, the initialization of the prediction value in combination with the azimuth sampling information can improve the accuracy of the prediction effect, thereby improving the point cloud compression performance.

本申请实施例中的点云编码方法,可以应用在如图4所示的预测编码和算术编码部分。另外,本申请实施例中的点云解码方法,还可以应用在如图5所示的预测解码和算术解码部分。也就是说,本申请实施例中的点云编解码方法,既可以应用于编码器,也可以应用于解码器,甚至还可以同时应用于编码器和解码器,但是本申请实施例不作具体限定。The point cloud encoding method in the embodiment of the present application can be applied to the predictive encoding and arithmetic encoding parts as shown in Figure 4. In addition, the point cloud decoding method in the embodiment of the present application can also be applied to the predictive decoding and arithmetic decoding parts as shown in Figure 5. In other words, the point cloud encoding and decoding method in the embodiment of the present application can be applied to both the encoder and the decoder, and can even be applied to both the encoder and the decoder at the same time, but the embodiment of the present application does not make specific limitations.

下面将结合附图对本申请各实施例进行详细说明。The embodiments of the present application will be described in detail below with reference to the accompanying drawings.

本申请实施例提出的了一种点云解码方法,图7为本申请实施例提出的点云解码方法的实现流程示意图一,如图7所示,解码器进行点云解码处理的方法可以包括以下步骤:The embodiment of the present application proposes a point cloud decoding method. FIG. 7 is a schematic diagram of a first implementation flow of the point cloud decoding method proposed in the embodiment of the present application. As shown in FIG. 7 , the method for the decoder to perform point cloud decoding processing may include the following steps:

步骤101、解码码流,确定当前点云对应的方位角采样信息。Step 101: Decode the code stream to determine the azimuth sampling information corresponding to the current point cloud.

在本申请的实施例中,解码器可以先解码码流,从而可以确定当前点云对应的方位角采样信息。In an embodiment of the present application, the decoder may first decode the code stream, thereby determining the azimuth sampling information corresponding to the current point cloud.

需要说明的是,在本申请的实施例中,当前点云对应的方位角采样信息可以对当前点云对应的方位角采样间隔进行确定。It should be noted that, in the embodiment of the present application, the azimuth sampling information corresponding to the current point cloud can determine the azimuth sampling interval corresponding to the current point cloud.

进一步地,在本申请的实施例中,当前点云对应的方位角采样信息可以通过语法元素的形式进行表示,即解码器解码码流,获得表示方位角采样信息的语法元素,从而确定方位角采样信息。Furthermore, in an embodiment of the present application, the azimuth sampling information corresponding to the current point cloud can be represented in the form of syntax elements, that is, the decoder decodes the code stream to obtain the syntax elements representing the azimuth sampling information, thereby determining the azimuth sampling information.

可以理解的是,在本申请的实施例中,通过解码码流,可以直接获得当前点云对应的、表征方位角采样间隔的方位角采样信息,也可以获得用于计算方位角采样信息的相关信息,进而根据该相关信息推导出当前点云对应的、表征方位角采样间隔的方位角采样信息。It can be understood that in the embodiments of the present application, by decoding the code stream, the azimuth sampling information corresponding to the current point cloud and representing the azimuth sampling interval can be directly obtained, and the relevant information used to calculate the azimuth sampling information can also be obtained, and then the azimuth sampling information corresponding to the current point cloud and representing the azimuth sampling interval can be derived based on the relevant information.

进一步地,在本申请的实施例中,在进行方位角采样信息的确定时,还可以解码码流,确定第一方位角参数,然后根据第一方位角参数和预设数值,进一步确定出当前点云对应的方位角采样信息。Furthermore, in an embodiment of the present application, when determining the azimuth sampling information, the code stream can also be decoded to determine the first azimuth parameter, and then the azimuth sampling information corresponding to the current point cloud can be further determined based on the first azimuth parameter and a preset value.

可以理解的是,在本申请的实施例中,预设数值可以预先设置的任意数值,本申请不进行具体限定,例如,预设数值可以为1。It can be understood that, in the embodiments of the present application, the preset value can be any preset value, and the present application does not specifically limit it. For example, the preset value can be 1.

示例性的,在一些实施例中,通过解码码流可以直接确定当前点云对应的方位角采样信息,即方位角采样间隔 For example, in some embodiments, the azimuth sampling information corresponding to the current point cloud can be directly determined by decoding the bit stream, that is, the azimuth sampling interval

示例性的,在一些实施例中,通过解码码流可以先确定第一方位角参数geom_angular_azimuth_speed_minus1,然后再通过第一方位角参数geom_angular_azimuth_speed_minus1与预设数值(例如1)计算获得对应的方位角采样信息,即方位角采样间隔例如公式(1):
For example, in some embodiments, the first azimuth parameter geom_angular_azimuth_speed_minus1 can be determined by decoding the bit stream, and then the corresponding azimuth sampling information, that is, the azimuth sampling interval, is calculated by the first azimuth parameter geom_angular_azimuth_speed_minus1 and a preset value (such as 1). For example, formula (1):

其中,语法元素geom_angular_azimuth_speed_minus1可以通过码流从编码端传输至解码端,该geom_angular_azimuth_speed_minus1可以为几何参数集(Geometric parameter set,GPS)中的语法元素。Among them, the syntax element geom_angular_azimuth_speed_minus1 can be transmitted from the encoding end to the decoding end through the bit stream, and the geom_angular_azimuth_speed_minus1 can be a syntax element in a geometric parameter set (GPS).

进一步地,在本申请的实施例中,在解码码流,确定当前点云对应的方位角采样信息的同时,还可以解码码流,确定当前点云对应的径向距离信息。Furthermore, in an embodiment of the present application, while decoding the code stream to determine the azimuth sampling information corresponding to the current point cloud, the code stream can also be decoded to determine the radial distance information corresponding to the current point cloud.

需要说明的是,在本申请的实施例中,当前点云对应的径向距离信息可以对当前点云对应的径向距离最小值,即半径最小值进行确定。It should be noted that, in the embodiment of the present application, the radial distance information corresponding to the current point cloud can determine the minimum radial distance corresponding to the current point cloud, that is, the minimum radius.

进一步地,在本申请的实施例中,当前点云对应的径向距离信息可以通过语法元素的形式进行表示,即解码器解码码流,获得表示径向距离信息的语法元素,从而确定径向距离信息。 Further, in an embodiment of the present application, the radial distance information corresponding to the current point cloud can be represented in the form of a syntax element, that is, the decoder decodes the code stream to obtain the syntax element representing the radial distance information, thereby determining the radial distance information.

示例性的,在一些实施例中,通过解码码流可以先确定表示径向距离信息的语法元素pgeom_min_radius,然后再通过pgeom_min_radius确定对应的径向距离信息rmin。例如公式(2):For example, in some embodiments, the syntax element pgeom_min_radius representing the radial distance information may be determined by decoding the bitstream, and then the corresponding radial distance information r min may be determined by pgeom_min_radius. For example, formula (2):

rmin=pgeom_min_radius  (2)r min = pgeom_min_radius (2)

其中,语法元素pgeom_min_radius可以通过码流从编码端传输至解码端,该pgeom_min_radius可以为几何块头部(Geometry block header,GPS)信息中的语法元素。Among them, the syntax element pgeom_min_radius can be transmitted from the encoding end to the decoding end through the bit stream, and the pgeom_min_radius can be a syntax element in the geometry block header (GPS) information.

需要说明的是,在本申请的实施例中,本申请实施例提出的点云解码方法,可以用于基于基于预测树的几何解码处理过程中。其中,当前点云可以为待解码的点云。It should be noted that, in the embodiment of the present application, the point cloud decoding method proposed in the embodiment of the present application can be used in the geometric decoding process based on the prediction tree, wherein the current point cloud can be the point cloud to be decoded.

可以理解的是,在本申请的实施例中,当前点云中的点的几何信息可以使用柱面坐标的形式进行表示,例如,当前点云中的点的几何信息可以表示为(r,i),其中r是点的径向距离,也可称之为半径;是点的方位角;θ是点所属的激光束的俯仰角。It can be understood that in the embodiment of the present application, the geometric information of the point in the current point cloud can be expressed in the form of cylindrical coordinates. For example, the geometric information of the point in the current point cloud can be expressed as (r, i), where r is the radial distance of the point, also known as the radius; is the azimuth angle of the point; θ is the elevation angle of the laser beam to which the point belongs.

也就是说,在本申请的实施例中,当前点云中的点的几何信息可以通过径向距离分量、方位角分量以及俯仰角分量进行表示。That is to say, in the embodiment of the present application, the geometric information of the point in the current point cloud can be represented by a radial distance component, an azimuth component, and a pitch angle component.

步骤102、根据当前点云对应的方位角采样信息确定当前点云对应的初始预测值,并根据初始预测值确定当前点云中点的预测值。Step 102: determine an initial prediction value corresponding to the current point cloud according to the azimuth sampling information corresponding to the current point cloud, and determine a prediction value of a midpoint of the current point cloud according to the initial prediction value.

在本申请的实施例中,在解码码流,确定当前点云对应的方位角采样信息之后,可以根据当前点云对应的方位角采样信息完成对预测值的初始化,确定出当前点云对应的初始预测值,从而可以进一步根据初始预测值确定出当前点云中点的预测值。In an embodiment of the present application, after decoding the code stream and determining the azimuth sampling information corresponding to the current point cloud, the prediction value can be initialized according to the azimuth sampling information corresponding to the current point cloud, and the initial prediction value corresponding to the current point cloud can be determined, so that the prediction value of the midpoint of the current point cloud can be further determined based on the initial prediction value.

需要说明的是,在本申请的实施例中,可以选择根据方位角采样信息和径向距离信息确定当前点云对应的初始预测值。It should be noted that, in the embodiments of the present application, it is possible to select to determine the initial prediction value corresponding to the current point cloud based on the azimuth sampling information and the radial distance information.

进一步地,在本申请的实施例中,在进行当前点云的预测值的初始化时,可以使用当前点云对应的方位角采样信息来实现初始预测值的确定,同时还可以使用当前点云对应的径向距离信息来实现初始预测值的确定。其中,该方位角采样信息可以用于对初始预测值的方位角分量进行确定。该径向距离信息可以用于对初始预测值的径向距离分量进行确定。Further, in an embodiment of the present application, when initializing the prediction value of the current point cloud, the azimuth sampling information corresponding to the current point cloud can be used to determine the initial prediction value, and the radial distance information corresponding to the current point cloud can also be used to determine the initial prediction value. The azimuth sampling information can be used to determine the azimuth component of the initial prediction value. The radial distance information can be used to determine the radial distance component of the initial prediction value.

可以理解的是,在本申请的实施例中,当前点云对应的初始预测值可以为当前点云对应的初始化后的几何信息预测值。It can be understood that, in the embodiment of the present application, the initial prediction value corresponding to the current point cloud may be the initialized geometric information prediction value corresponding to the current point cloud.

可以理解的是,在本申请的实施例中,由于当前点云中任意点的几何信息可以表示为柱面坐标(r,i),因此在对当前点云的预测值进行初始化时,最终获得的初始预测值也可以通过柱面坐标进行表示,因此初始预测值也可以通过径向距离分量、方位角分量以及俯仰角分量进行表示。It can be understood that in the embodiment of the present application, since the geometric information of any point in the current point cloud can be expressed as cylindrical coordinates (r, i), therefore, when initializing the prediction value of the current point cloud, the final obtained initial prediction value can also be represented by cylindrical coordinates, so the initial prediction value can also be represented by radial distance components, azimuth components, and pitch angle components.

相应的,在本申请的实施例中,在对当前点云的预测值进行初始化的过程中,可以使用当前点云对应的方位角采样信息对初始预测值中的方位角分量进行确定。Correspondingly, in an embodiment of the present application, in the process of initializing the predicted value of the current point cloud, the azimuth sampling information corresponding to the current point cloud can be used to determine the azimuth component in the initial predicted value.

相应的,在本申请的实施例中,在对当前点云的预测值进行初始化的过程中,可以使用当前点云对应的径向距离信息对初始预测值中的径向距离分量进行确定。Correspondingly, in an embodiment of the present application, in the process of initializing the predicted value of the current point cloud, the radial distance information corresponding to the current point cloud can be used to determine the radial distance component in the initial predicted value.

也就是说,在本申请的实施例中,结合当前点云对应的方位角采样信息和径向距离信息进行当前点云对应的预测值的初始时,最终获得的初始预测值中的方位角分量由方位角采样信息确定,同时,径向距离分量由径向距离信息确定。That is to say, in an embodiment of the present application, when the initial prediction value corresponding to the current point cloud is performed in combination with the azimuth sampling information and radial distance information corresponding to the current point cloud, the azimuth component in the initial prediction value finally obtained is determined by the azimuth sampling information, and at the same time, the radial distance component is determined by the radial distance information.

进一步地,在本申请的实施例中,在根据方位角采样信息和径向距离信息确定当前点云对应的初始预测值时,可以先根据根据方位角采样信息确定初始化参数;然后再根据方位角采样信息和初始化参数,确定初始预测值对应的方位角分量。Furthermore, in an embodiment of the present application, when determining the initial prediction value corresponding to the current point cloud based on the azimuth sampling information and the radial distance information, the initialization parameters can be first determined based on the azimuth sampling information; and then the azimuth component corresponding to the initial prediction value can be determined based on the azimuth sampling information and the initialization parameters.

需要说明的是,在本申请的实时中,在确定方位角采样信息(如方位角采样间隔)之后,便可以先利用方位角采样信息计算获得初始化参数,该初始化参数可以用于在初始化预测值的过程中对方位角分量进行调整和控制,接着便可以结合方位角采样信息和初始化参数,进一步计算获得初始预测值中的方位角分量。It should be noted that in the real time of the present application, after determining the azimuth sampling information (such as the azimuth sampling interval), the azimuth sampling information can be used to calculate the initialization parameters, and the initialization parameters can be used to adjust and control the azimuth component in the process of initializing the predicted value. Then, the azimuth sampling information and the initialization parameters can be combined to further calculate the azimuth component in the initial predicted value.

可以理解的是,在本申请的实施例中,可以在方位角采样信息的基础上,结合任意的数值,通过任意的计算方式来进行初始化参数的确定。It is understandable that, in the embodiments of the present application, the initialization parameters may be determined based on the azimuth sampling information in combination with any numerical value and by any calculation method.

示例性的,在一些实施例中,假设方位角采样信息为方位角采样间隔那么可以根据计算获得初始化参数k:
Exemplarily, in some embodiments, it is assumed that the azimuth sampling information is the azimuth sampling interval Then according to Calculate the initialization parameter k:

其中,round()为Round函数,是指返回一个数值,该数值是按照指定的小数位数进行四舍五入运算的结果。 Among them, round() is a Round function, which means returning a value that is the result of rounding to a specified number of decimal places.

可以理解的是,在本申请的实施例中,除了上述公式(3)以外,也可以采用其他方式确定初始化参数,本申请对初始化参数的计算方式不进行限制。It is understandable that, in the embodiments of the present application, in addition to the above formula (3), other methods may be used to determine the initialization parameters, and the present application does not limit the calculation method of the initialization parameters.

需要说明的是,在本申请的实施例中,可以在方位角采样信息和初始化参数的基础上,结合任意的数值,通过任意的计算方式来进行初始预测值的方位角分量的确定。It should be noted that, in the embodiments of the present application, the azimuth component of the initial prediction value may be determined by any calculation method in combination with any numerical value based on the azimuth sampling information and the initialization parameters.

示例性的,在一些实施例中,假设方位角采样信息为方位角采样间隔初始化参数为k,最终计算获得方位角分量
Exemplarily, in some embodiments, it is assumed that the azimuth sampling information is the azimuth sampling interval The initialization parameter is k, and the azimuth component is finally calculated.

可以理解的是,在本申请的实施例中,除了上述公式(4)以外,也可以采用其他方式确定方位角分量,本申请对方位角分量的计算方式不进行限制。It is understandable that in the embodiments of the present application, in addition to the above formula (4), other methods can also be used to determine the azimuth component, and the present application does not limit the calculation method of the azimuth component.

进一步地,在本申请的实施例中,在根据方位角采样信息和径向距离信息确定当前点云对应的初始预测值时,可以直接根据径向距离信息确定初始预测值对应的径向距离分量。Further, in an embodiment of the present application, when determining an initial prediction value corresponding to the current point cloud based on the azimuth sampling information and the radial distance information, the radial distance component corresponding to the initial prediction value can be directly determined based on the radial distance information.

示例性的,在一些实施例中,假设径向距离信息为当前点云的最小径向值rmin,最终计算获得径向距离分量r0Exemplarily, in some embodiments, it is assumed that the radial distance information is the minimum radial value r min of the current point cloud, and the radial distance component r 0 is finally calculated:

r0=rmin   (5)r 0 = r min (5)

由此可见,在本申请的实施例中,在根据方位角采样信息和径向距离信息确定当前点云对应的初始预测值之后,最终获得的初始预测值的径向距离分量为rmin,方位角分量为 It can be seen that in the embodiment of the present application, after determining the initial prediction value corresponding to the current point cloud according to the azimuth sampling information and the radial distance information, the radial distance component of the initial prediction value finally obtained is r min , and the azimuth component is

可以理解的是,在本申请的实施例中,在进行当前点云的预测值的初始化过程中,同时可以将初始预测值的俯仰角分量设置为一个固定的数值,例如,可以将俯仰角分量设置为0。It can be understood that in the embodiments of the present application, during the process of initializing the predicted value of the current point cloud, the pitch angle component of the initial predicted value can also be set to a fixed value, for example, the pitch angle component can be set to 0.

也就是说,在本申请的实施例中,在完成对当前点云的预测值的初始化之后,初始预测值可以表示为(rmin0)。That is, in the embodiment of the present application, after the initialization of the prediction value of the current point cloud is completed, the initial prediction value can be expressed as (r min , 0).

进一步地,在本申请的实施例中,在解码码流,确定当前点云对应的径向距离信息之后,当进行初始预测值的确定时,还可以选择根据径向距离信息确定初始预测值的径向距离分量,同时将方位角分量和俯仰角分量分别设置为固定的数值,例如,将方位角分量设置为0,同时将俯仰角分量设置为0。Furthermore, in an embodiment of the present application, after decoding the code stream and determining the radial distance information corresponding to the current point cloud, when determining the initial prediction value, you can also choose to determine the radial distance component of the initial prediction value based on the radial distance information, and set the azimuth component and the pitch angle component to fixed values, for example, set the azimuth component to 0, and set the pitch angle component to 0 at the same time.

也就是说,在本申请的实施例中,还可以选择采用常见的初始化方案,最终获得的初始预测值可以表示为(rmin,0,0)。That is to say, in the embodiment of the present application, a common initialization scheme may also be selected, and the initial prediction value finally obtained may be expressed as (r min , 0, 0).

由此可见,本申请实施例提出的点云解码方法,在对当前点云的预测值进行初始化时,可以选择根据当前点云对应的方位角采样信息对初始预测值的方位角分量进行确定,使得初始预测值的设置更为合理。It can be seen that the point cloud decoding method proposed in the embodiment of the present application, when initializing the prediction value of the current point cloud, can choose to determine the azimuth component of the initial prediction value according to the azimuth sampling information corresponding to the current point cloud, so that the setting of the initial prediction value is more reasonable.

进一步地,在本申请的实施例中,在根据当前点云对应的方位角采样信息确定当前点云对应的初始预测值之后,可以根据初始预测值确定当前点云中点的预测值。Further, in an embodiment of the present application, after determining an initial prediction value corresponding to the current point cloud according to the azimuth sampling information corresponding to the current point cloud, the prediction value of the midpoint of the current point cloud can be determined according to the initial prediction value.

需要说明的是,在本申请的实施例中,在根据初始预测值确定当前点云中点的预测值时,可以先将初始预测值确定为当前点云对应的预测树的根节点的预测值;然后再基于根节点的预测值,确定当前点云中的其他点的预测值。It should be noted that in an embodiment of the present application, when determining the prediction value of a point in the current point cloud based on the initial prediction value, the initial prediction value can be first determined as the prediction value of the root node of the prediction tree corresponding to the current point cloud; and then based on the prediction value of the root node, the prediction values of other points in the current point cloud are determined.

进一步地,在本申请的实施例中,对于当前点云中的当前点,在基于初始预测值确定出当前点的预测值之后,可以进一步解码码流,确定当前点云中当前点对应的量化参数和量化后的预测残差;然后可以对量化后的预测残差进行反量化,确定当前点对应的预测残差;最终便可以根据当前点对应的预测值和预测残差,确定当前点对应的重建值。Furthermore, in an embodiment of the present application, for the current point in the current point cloud, after the prediction value of the current point is determined based on the initial prediction value, the code stream can be further decoded to determine the quantization parameter and the quantized prediction residual corresponding to the current point in the current point cloud; then the quantized prediction residual can be inverse quantized to determine the prediction residual corresponding to the current point; finally, the reconstruction value corresponding to the current point can be determined based on the prediction value and prediction residual corresponding to the current point.

进一步地,在本申请的实施例中,在对当前点进行几何信息的预测处理时,还可以解码码流,确定当前点对应的模式标识信息;其中,模式标识信息用于指示当前点对应的预测模式为帧间模式或帧内模式。Furthermore, in an embodiment of the present application, when performing prediction processing on the geometric information of the current point, the code stream can also be decoded to determine the mode identification information corresponding to the current point; wherein the mode identification information is used to indicate whether the prediction mode corresponding to the current point is an inter-frame mode or an intra-frame mode.

也就是说,在本申请的实施例中,在完成对当前点云对应的初始预测值的确定之后,可以通过解码码流确定当前点云中的当前点的模式标识信息,从而根据模式标识信息确定对当前点采用帧内预测模式或者帧间预测模式,最终便可以根据对应的预测模式确定出当前点的预测值。That is to say, in an embodiment of the present application, after completing the determination of the initial prediction value corresponding to the current point cloud, the mode identification information of the current point in the current point cloud can be determined by decoding the code stream, thereby determining whether to adopt an intra-frame prediction mode or an inter-frame prediction mode for the current point according to the mode identification information, and finally determining the prediction value of the current point according to the corresponding prediction mode.

由此可见,在本申请的实施例中,在基于预测树的几何解码中,对于当前点云中的当前点(待解码点),首先解码得到当前点对应的量化系数以及预测索引(模式标识信息),然后根据预测索引唯一确定对应的预测值,其中,对于当前点云的根节点来说,初始预测值即为进行初始化处理后确定的几何预测值;然后解码几何信息的量化后的预测残差,并对其进行反量化,获得预测残差;接着根据预测值和预测残差恢复得到当前点的几何重构信息;然后对得到的重建几何信息进行坐标反变换,得到最终的重建几何信息。It can be seen that in an embodiment of the present application, in the prediction tree-based geometric decoding, for the current point in the current point cloud (the point to be decoded), the quantization coefficient and the prediction index (mode identification information) corresponding to the current point are first decoded, and then the corresponding prediction value is uniquely determined according to the prediction index, wherein, for the root node of the current point cloud, the initial prediction value is the geometric prediction value determined after the initialization processing; then, the quantized prediction residual of the geometric information is decoded, and dequantized to obtain the prediction residual; then, the geometric reconstruction information of the current point is restored based on the prediction value and the prediction residual; then, the obtained reconstructed geometric information is subjected to a coordinate inverse transformation to obtain the final reconstructed geometric information.

进一步地,在本申请的实施例中,图8为本申请实施例提出的点云解码方法的实现流程示意图二,如图8所示,解码器进行点云解码的方法还可以包括以下步骤:Further, in an embodiment of the present application, FIG8 is a second schematic diagram of the implementation flow of the point cloud decoding method proposed in an embodiment of the present application. As shown in FIG8 , the method for the decoder to perform point cloud decoding may further include the following steps:

步骤103、确定初始化模式标识信息。 Step 103: Determine initialization mode identification information.

在本申请的实施例中,还可以确定初始化标识信息。其中,初始化模式标识信息可以对当前点云所使用的预测值的初始化模式进行确定和指示,其中,当前点云所使用的预测值的初始化模式可以包括第一初始化模式和第二初始化模式。In an embodiment of the present application, initialization identification information may also be determined. The initialization mode identification information may determine and indicate an initialization mode of a prediction value used by the current point cloud, wherein the initialization mode of a prediction value used by the current point cloud may include a first initialization mode and a second initialization mode.

也就是说,在本申请的实施例中,基于初始化模式标识信息,可以确定当前点云所使用的初始化模式为第一初始化模式或第二初始化模式。That is to say, in the embodiment of the present application, based on the initialization mode identification information, it can be determined that the initialization mode used by the current point cloud is the first initialization mode or the second initialization mode.

需要说明的是,在本申请的实施例中,第一初始化模式可以表征使用码流中传输的方位角的相关信息来进行预测值的初始化的模式;第二初始化模式可以表征不使用码流中传输的方位角的相关信息来进行预测值的初始化的模式。It should be noted that, in an embodiment of the present application, the first initialization mode may represent a mode for initializing the prediction value using the azimuth angle related information transmitted in the code stream; the second initialization mode may represent a mode for initializing the prediction value without using the azimuth angle related information transmitted in the code stream.

进一步地,在本申请的实施例中,在进行初始化模式标识信息的确定时,可以选择解码码流,确定初始化模式标识信息。Further, in an embodiment of the present application, when determining the initialization mode identification information, a decoding code stream may be selected to determine the initialization mode identification information.

也就是说,在本申请的实施例中,初始化模式标识信息可以通过码流从编码端传输至解码端。That is to say, in the embodiment of the present application, the initialization mode identification information can be transmitted from the encoding end to the decoding end through the code stream.

进一步地,在本申请的实施例中,在进行初始化模式标识信息的确定时,可以选择通过当前点云对应的语法表确定初始化模式标识信息。Further, in an embodiment of the present application, when determining the initialization mode identification information, it is possible to choose to determine the initialization mode identification information through a syntax table corresponding to the current point cloud.

也就是说,在本申请的实施例中,初始化模式标识信息可以设置在当前点云对应的语法表,如syntax table中。That is to say, in an embodiment of the present application, the initialization mode identification information can be set in the syntax table corresponding to the current point cloud, such as the syntax table.

进一步地,在本申请的实施例中,在本申请实施例中,在初始化模式标识信息的取值为第一值的情况下,可以确定初始化模式标识信息指示当前点云使用第一初始化模式;在初始化模式标识信息的取值为第二值的情况下,可以确定初始化模式标识信息指示当前点云使用第二初始化模式。Further, in an embodiment of the present application, in an embodiment of the present application, when the value of the initialization mode identification information is a first value, it can be determined that the initialization mode identification information indicates that the current point cloud uses the first initialization mode; when the value of the initialization mode identification information is a second value, it can be determined that the initialization mode identification information indicates that the current point cloud uses the second initialization mode.

需要说明的是,在本申请的实施例中,第一值与第二值不同,而且第一值和第二值可以是参数形式,也可以是数字形式。It should be noted that, in the embodiments of the present application, the first value is different from the second value, and the first value and the second value may be in parameter form or in digital form.

示例性的,在一些实施例中,第一值可以为0,第二值可以为1。例如,当初始化模式标识信息的取值为0时,可以确定对当前点云使用第一初始化模式进行预测值的初始化处理,即根据当前点云对应的方位角采样信息确定当前点云的初始预测值的方位角分量;当初始化模式标识信息的取值为1时,可以确定对当前点云使用第二初始化模式进行预测值的初始化处理,即不根据当前点云对应的方位角采样信息确定当前点云的初始预测值,而是直接将当前点云的初始预测值的方位角分量设置为第三值,例如第三值为0。Exemplarily, in some embodiments, the first value may be 0, and the second value may be 1. For example, when the value of the initialization mode identification information is 0, it can be determined that the first initialization mode is used to initialize the prediction value of the current point cloud, that is, the azimuth component of the initial prediction value of the current point cloud is determined according to the azimuth sampling information corresponding to the current point cloud; when the value of the initialization mode identification information is 1, it can be determined that the second initialization mode is used to initialize the prediction value of the current point cloud, that is, the initial prediction value of the current point cloud is not determined according to the azimuth sampling information corresponding to the current point cloud, but the azimuth component of the initial prediction value of the current point cloud is directly set to a third value, for example, the third value is 0.

需要说明的是,在本申请的实施例中,初始化模式标识信息可以是写入在概述(profile)中的参数,也可以是一个标志(flag)的取值,这里对此不作具体限定。It should be noted that, in the embodiments of the present application, the initialization mode identification information may be a parameter written in a profile, or may be a value of a flag, which is not specifically limited here.

示例性的,在本申请的实施例中,初始化模式标识信息可以作为GPS级别的语法元素,也可以作为GBH级别的语法元素,本申请不进行具体限定。Exemplarily, in an embodiment of the present application, the initialization mode identification information may be used as a syntax element at the GPS level or as a syntax element at the GBH level, and the present application does not make any specific limitation thereto.

步骤104、在初始化模式标识信息指示当前点云使用第一初始化模式的情况下,执行方位角采样信息和径向距离信息的确定流程。Step 104 : When the initialization mode identification information indicates that the current point cloud uses the first initialization mode, a process for determining the azimuth sampling information and the radial distance information is executed.

在本申请的实施例中,在确定初始化模式标识信息之后,如果初始化模式标识信息指示当前点云使用第一初始化模式,那么便可以执行当前点云对应的方位角采样信息和径向距离信息的确定流程,从而可以进一步根据当前点云对应的方位角采样信息和径向距离信息对当前点云的预测值进行初始化处理,确定对应的初始预测值。In an embodiment of the present application, after determining the initialization mode identification information, if the initialization mode identification information indicates that the current point cloud uses the first initialization mode, then the process of determining the azimuth sampling information and radial distance information corresponding to the current point cloud can be executed, so that the predicted value of the current point cloud can be further initialized according to the azimuth sampling information and radial distance information corresponding to the current point cloud to determine the corresponding initial prediction value.

可以理解的是,在本申请的实施例中,基于第一初始化模式,在进行当前点云的预测值的初始化处理时,可以选择根据当前点云对应的方位角采样间隔(方位角采样信息)来进行初始预测值的方位角分量的确定,例如将初始预测值的方位角分量确定为 It can be understood that in the embodiment of the present application, based on the first initialization mode, when initializing the predicted value of the current point cloud, it is possible to select the azimuth component of the initial predicted value to be determined according to the azimuth sampling interval (azimuth sampling information) corresponding to the current point cloud, for example, the azimuth component of the initial predicted value is determined as

步骤105、在初始化模式标识信息指示当前点云使用第二初始化模式的情况下,执行径向距离信息的确定流程。Step 105 : When the initialization mode identification information indicates that the current point cloud uses the second initialization mode, a radial distance information determination process is executed.

在本申请的实施例中,在确定初始化模式标识信息之后,如果初始化模式标识信息指示当前点云使用第二初始化模式,那么便可以执行当前点云对应的径向距离信息的确定流程,从而可以进一步根据当前点云对应的径向距离信息对当前点云的预测值进行初始化处理,确定对应的初始预测值。In an embodiment of the present application, after determining the initialization mode identification information, if the initialization mode identification information indicates that the current point cloud uses the second initialization mode, then the process of determining the radial distance information corresponding to the current point cloud can be executed, so that the predicted value of the current point cloud can be further initialized according to the radial distance information corresponding to the current point cloud to determine the corresponding initial prediction value.

可以理解的是,在本申请的实施例中,基于第二初始化模式,在进行当前点云的预测值的初始化处理时,可以选择直接将初始预测值的方位角分量的确定为固定的数值,例如确定为0。It can be understood that in the embodiment of the present application, based on the second initialization mode, when initializing the predicted value of the current point cloud, it is possible to choose to directly determine the azimuth component of the initial predicted value as a fixed value, for example, as 0.

进一步地,在本申请的实施例中,图9为本申请实施例提出的点云解码方法的实现流程示意图三,如图9所示,解码器进行点云解码的方法还可以包括以下步骤:Further, in an embodiment of the present application, FIG. 9 is a schematic diagram of a third implementation flow of the point cloud decoding method proposed in an embodiment of the present application. As shown in FIG. 9 , the method for performing point cloud decoding by the decoder may further include the following steps:

步骤106、在初始化模式标识信息指示当前点云使用第一初始化模式的情况下,根据方位角采样信息确定初始预测值的方位角分量。Step 106: When the initialization mode identification information indicates that the current point cloud uses the first initialization mode, determine the azimuth component of the initial prediction value according to the azimuth sampling information.

在本申请的实施例中,在确定初始化模式标识信息之后,如果初始化模式标识信息指示当前点云使用第一初始化模式,那么,基于第一初始化模式,在进行当前点云的预测值的初始化处理时,可以选择根据当前点云对应的方位角采样间隔(方位角采样信息)来进行初始预测值的方位角分量的确定,例如将初始预测值的方位角分量确定为 In an embodiment of the present application, after determining the initialization mode identification information, if the initialization mode identification information indicates that the current point cloud uses the first initialization mode, then, based on the first initialization mode, when performing initialization processing of the predicted value of the current point cloud, it is possible to select the azimuth component of the initial predicted value according to the azimuth sampling interval (azimuth sampling information) corresponding to the current point cloud to determine, for example, the azimuth component of the initial predicted value is determined as

步骤107、在初始化模式标识信息指示当前点云使用第二初始化模式的情况下,将初始预测值的方位角分量设置为第三值。Step 107: When the initialization mode identification information indicates that the current point cloud uses the second initialization mode, the azimuth component of the initial prediction value is set to a third value.

在本申请的实施例中,在确定初始化模式标识信息之后,如果初始化模式标识信息指示当前点云使用第二初始化模式,那么,基于第二初始化模式,在进行当前点云的预测值的初始化处理时,可以选择直接将初始预测值的方位角分量的确定为第三值。其中,第三值可以为任意数值,例如0。In an embodiment of the present application, after determining the initialization mode identification information, if the initialization mode identification information indicates that the current point cloud uses the second initialization mode, then, based on the second initialization mode, when performing initialization processing of the predicted value of the current point cloud, the azimuth component of the initial predicted value can be directly determined as the third value. The third value can be any value, such as 0.

由此可见,预测值的方位角分量的预测值初始化方式可以采用多种方式,具体采用哪种方式由如初始化模式标识信息的头信息表示。It can be seen that the azimuth component of the predicted value There are many ways to initialize the predicted value, and the specific method is indicated by the header information such as the initialization mode identification information.

示例性的,在一些实施例中,在头信息,如GPS或/和GBH中设置一个语法元素,如geom_angular_phi_ini_zero,该语法元素可以表示当前点云的柱面坐标(r,i)中方位角的预测初始值 For example, in some embodiments, a syntax element, such as geom_angular_phi_ini_zero, is set in the header information, such as GPS or/and GBH, and the syntax element can represent the cylindrical coordinates (r, i) Azimuth The predicted initial value of

示例性的,在一些实施例中,当geom_angular_phi_ini_zero=1时,表示的预测值初始化为0,即初始预测值的方位角分量为0,也就是说,当待编(解)码点是预测树的根节点时,其柱面坐标的预测值为0。Exemplarily, in some embodiments, when geom_angular_phi_ini_zero=1, it means The predicted value is initialized to 0, that is, the azimuth component of the initial predicted value is 0, that is, when the code point to be encoded (decoded) is the root node of the prediction tree, its cylindrical coordinates The predicted value is 0.

示例性的,在一些实施例中,当geom_angular_phi_ini_zero=0时,表示的预测值初始化为也就是说,当待编(解)码点是预测树的根节点时,其柱面坐标的预测值为 Exemplarily, in some embodiments, when geom_angular_phi_ini_zero=0, it means The predicted value is initialized as That is, when the code point to be encoded (decoded) is the root node of the prediction tree, its cylindrical coordinates The predicted value is

可以理解的是,在本申请的实施例中,与常见技术相比,通过第一初始化模式进行预测值的初始化时,可以利用码流中传输的方位角采样信息(如方位角采样阈值)对初始预测值的方位角分量进行确定,而不再直接将初始预测值的方位角分量初始化为0,这样的预测值初始化方式更为合理,可以有效提升几何信息的预测效果。It can be understood that in the embodiments of the present application, compared with common technologies, when the prediction value is initialized through the first initialization mode, the azimuth sampling information (such as the azimuth sampling threshold) transmitted in the code stream can be used to determine the azimuth component of the initial prediction value, instead of directly initializing the azimuth component of the initial prediction value to 0. This prediction value initialization method is more reasonable and can effectively improve the prediction effect of geometric information.

综上所述,通过步骤101至步骤107所提出的解码方法,可以先确定当前点云对应的方位角采样信息和径向距离信息,然后再结合方位角采样信息和径向距离信息进行当前点云的预测值的初始化处理,具体地,可以根据方位角采样信息对初始预测值的方位角分量进行确定,同时,根据径向距离信息对初始预测值的径向距离分量进行确定。To summarize, through the decoding method proposed in steps 101 to 107, the azimuth sampling information and radial distance information corresponding to the current point cloud can be determined first, and then the predicted value of the current point cloud can be initialized in combination with the azimuth sampling information and the radial distance information. Specifically, the azimuth component of the initial predicted value can be determined according to the azimuth sampling information, and at the same time, the radial distance component of the initial predicted value can be determined according to the radial distance information.

在一些实施例中,对本申请实施例提出的解码方法进行实验验证,以G-PCC的通用测试软件TMC13V21为基础,与其相比,本申请实施例提出的解码方法在无损条件下,预测树几何编码码流性能对比结果如表1所示,从表1可以看出,该解码方法在这些点云序列的几何码流有一些较小的增益。In some embodiments, the decoding method proposed in the embodiment of the present application is experimentally verified based on the general test software TMC13V21 of G-PCC. Compared with it, the decoding method proposed in the embodiment of the present application is compared with the prediction tree geometry coding code stream performance under lossless conditions as shown in Table 1. It can be seen from Table 1 that the decoding method has some small gains in the geometry code streams of these point cloud sequences.

本申请实施例公开了一种点云解码方法,在解码端,解码码流,确定当前点云对应的方位角采样信息;根据当前点云对应的方位角采样信息确定当前点云对应的初始预测值,并根据初始预测值确定当前点云中点的预测值。由此可见,在本申请的实施例中,在对当前点云的预测值进行初始化的过程中,可以选择通过当前点云对应的方位角采样信息来确定对应的初始预测值,能够充分考虑到当前点云的根节点的方位角的实际大小,实现更为合理的预测值的初始化处理。也就是说,在本申请的实施例中,结合方位角采样信息进行预测值的初始化,能够提高预测效果的准确性,从而提升了点云压缩性能。The embodiment of the present application discloses a point cloud decoding method, at the decoding end, the code stream is decoded to determine the azimuth sampling information corresponding to the current point cloud; the initial prediction value corresponding to the current point cloud is determined according to the azimuth sampling information corresponding to the current point cloud, and the prediction value of the midpoint of the current point cloud is determined according to the initial prediction value. It can be seen that in the embodiment of the present application, in the process of initializing the prediction value of the current point cloud, the corresponding initial prediction value can be determined by the azimuth sampling information corresponding to the current point cloud, which can fully consider the actual size of the azimuth of the root node of the current point cloud, and realize more reasonable initialization processing of the prediction value. In other words, in the embodiment of the present application, the initialization of the prediction value in combination with the azimuth sampling information can improve the accuracy of the prediction effect, thereby improving the point cloud compression performance.

本申请的再一实施例提出一种点云编码方法,图10为本申请实施例提出的点云编码方法的实现流程示意图一,如图10所示,编码器进行点云编码处理的方法可以包括以下步骤:Another embodiment of the present application provides a point cloud encoding method. FIG. 10 is a schematic diagram of a first implementation flow of the point cloud encoding method provided in the embodiment of the present application. As shown in FIG. 10 , the method for the encoder to perform point cloud encoding processing may include the following steps:

步骤201、确定当前点云对应的方位角采样信息,并将方位角采样信息写入码流。Step 201: Determine the azimuth sampling information corresponding to the current point cloud, and write the azimuth sampling information into the bitstream.

在本申请的实施例中,编码器可以先确定当前点云对应的方位角采样信息,同时可以将该方位角采样信息写入码流,传输至解码端。In an embodiment of the present application, the encoder may first determine the azimuth sampling information corresponding to the current point cloud, and may write the azimuth sampling information into a bit stream and transmit it to a decoding end.

需要说明的是,在本申请的实施例中,本申请实施例提出的点云编码方法,可以应用于基于预测树的几何编码过程中。其中,针对基于预测树的几何编码,首先可以对输入的几何信息进行排序,例如,采用方位角的排序方式进行排序。It should be noted that, in the embodiment of the present application, the point cloud coding method proposed in the embodiment of the present application can be applied to the geometric coding process based on the prediction tree. Among them, for the geometric coding based on the prediction tree, the input geometric information can be sorted first, for example, by sorting in the azimuth angle.

可以理解的是,在本申请的实施例中,在对输入的几何信息进行排序进行排序时,首先根据输入点云(当前点云)的笛卡尔坐标(x,y,z)计算其柱面坐标(r,θ),其中,r是点的径向距离,也可称之为半径;是点的方位角;θ是点所属的激光束的俯仰角。然后对当前点云中的点按照r,tanθ的顺序进行排序,已完成对当前点云中的点的排序。It can be understood that in the embodiment of the present application, when sorting the input geometric information, firstly, the cylindrical coordinates (r, θ), where r is the radial distance of the point, also known as the radius; is the azimuth of the point; θ is the elevation angle of the laser beam to which the point belongs. Then, for the points in the current point cloud, The order of r, tanθ is sorted, and the sorting of the points in the current point cloud has been completed.

示例性的,在一些实施例中,在具体的排序过程中,首先比较的大小,如果相同,则比较r,如果r相同,则比较tanθ,最终完成整个点云的重新排序。Exemplarily, in some embodiments, in a specific sorting process, first compare If the size If they are the same, then compare r. If r is the same, then compare tanθ, and finally complete the reordering of the entire point cloud.

在基于方位角的几何预测编码方案中,在构建预测树时,编码器会先将输入点云从笛卡尔坐标(x,y,z)转换到柱面坐标(r,θ)。然后将输入点云中的每个点依照其俯仰角划分到不同的激光束上。由于在对输入的几何信息进行排序时,默认采用基于方位角的排序方式,因此整个点云的几何信息是按照方位角从小到大的顺序排列的。对于第i束激光,其被访问到的第一个点是属于该束激光的所有点中方位角最小的点。且第i束后续被访问到的点的父节点均是同一束激光中比自身方位角小的第一个点。第i束激光的第一个点的父节点为第i-1束激光的第一个点。对于第0束激光的第一个点,由于其没有父节点,因此作为整棵树的根节点。In the azimuth-based geometric prediction coding scheme, when building the prediction tree, the encoder first converts the input point cloud from Cartesian coordinates (x, y, z) to cylindrical coordinates (r, θ). Each point in the input point cloud is then divided into different laser beams according to its pitch angle. Since the azimuth-based sorting method is used by default when sorting the input geometric information, the geometric information of the entire point cloud is arranged in ascending order of azimuth. For the i-th laser beam, the first point visited is the point with the smallest azimuth among all the points belonging to the laser beam. And the parent node of the points subsequently visited by the i-th beam is the first point in the same laser beam with a smaller azimuth than itself. The parent node of the first point of the i-th laser beam is the first point of the i-1-th laser beam. For the first point of the 0th laser beam, since it has no parent node, it serves as the root node of the entire tree.

接下来按照深度优先的顺序对预测树中的每个节点进行预测编码。对于待编码点,首先根据帧内预测算法或帧间预测算法确定几何信息的预测值。其中在帧内预测中,采用预测列表对待编码点进行预测。而对于帧间预测,则在前一已编码帧中寻找预测点对待编码点进行预测。然后通过率失真优化选取码率最小的预测值作为待编(解)码点的预测值。接着利用节点几何信息的真实值与预测值做差得到预测残差,并利用量化参数对预测残差进行量化。最后对量化参数、选取的预测值索引、预测残差等信息进行编码,生成二进制码流。Next, predictive coding is performed on each node in the prediction tree in a depth-first order. For the point to be coded, the predicted value of the geometric information is first determined according to the intra-frame prediction algorithm or the inter-frame prediction algorithm. In intra-frame prediction, a prediction list is used to predict the point to be coded. For inter-frame prediction, the prediction point is found in the previous coded frame to predict the point to be coded. Then, the prediction value with the minimum bit rate is selected as the prediction value of the code point to be coded (decoded) through rate-distortion optimization. Then, the prediction residual is obtained by subtracting the actual value of the node geometry information from the predicted value, and the prediction residual is quantized using the quantization parameter. Finally, the quantization parameter, the selected prediction value index, the prediction residual and other information are encoded to generate a binary code stream.

需要说明的是,在本申请的实施例中,在对当前点云进行排序时,可用的排序方法有无序、莫顿序、方位角序和径向距离序,例如,选择的排序方法是按方位角排序,即依次根据方位角、径向距离和俯仰角正切值对各点进行排序。然后,建立预测树结构。编码器会先将输入点云从笛卡尔坐标(x,y,z)转换到柱面坐标(r,θ)。然后将输入点云中的每个点依照其俯仰角划分到不同的激光束上,此时(r,θ)可以转换为(r,i),其中i表示激光束的索引。由于在对输入的几何信息进行排序时,默认采用基于方位角的排序方式,因此整个点云的几何信息是按照方位角从小到大的顺序排列的。对于第i束激光,其被访问到的第一个点是属于该束激光的所有点中方位角最小的点。且第i束后续被访问到的点的父节点均是同一束激光中比自身方位角小的第一个点。第i束激光的第一个点的父节点为第i-1束激光的第一个点。对于第0束激光的第一个点,由于其没有父节点,因此作为整棵树的根节点。It should be noted that in the embodiment of the present application, when sorting the current point cloud, the available sorting methods are unordered, Morton order, azimuth order and radial distance order. For example, the selected sorting method is sorting by azimuth, that is, sorting each point according to azimuth, radial distance and pitch tangent value in turn. Then, a prediction tree structure is established. The encoder will first convert the input point cloud from Cartesian coordinates (x, y, z) to cylindrical coordinates (r, θ). Then each point in the input point cloud is divided into different laser beams according to its pitch angle. θ) can be converted to (r, i), where i represents the index of the laser beam. Since the azimuth-based sorting method is used by default when sorting the input geometric information, the geometric information of the entire point cloud is arranged in ascending order of azimuth. For the i-th laser beam, the first point visited is the point with the smallest azimuth among all the points belonging to the laser beam. And the parent node of the points subsequently visited by the i-th beam is the first point in the same laser beam with a smaller azimuth than itself. The parent node of the first point of the i-th laser beam is the first point of the i-1-th laser beam. For the first point of the 0th laser beam, since it has no parent node, it serves as the root node of the entire tree.

需要说明的是,在本申请的实施例中,当前点云对应的方位角采样信息可以对当前点云对应的方位角采样间隔进行确定。It should be noted that, in the embodiment of the present application, the azimuth sampling information corresponding to the current point cloud can determine the azimuth sampling interval corresponding to the current point cloud.

进一步地,在本申请的实施例中,当前点云对应的方位角采样信息可以通过语法元素的形式进行表示,即编码器在编码方位角采样信息之后,将码流传输至解码端之后,解码器解码码流,可以获得表示方位角采样信息的语法元素,从而确定方位角采样信息。Furthermore, in an embodiment of the present application, the azimuth sampling information corresponding to the current point cloud can be represented in the form of syntax elements, that is, after the encoder encodes the azimuth sampling information and transmits the code stream to the decoding end, the decoder decodes the code stream and obtains the syntax elements representing the azimuth sampling information, thereby determining the azimuth sampling information.

可以理解的是,在本申请的实施例中,编码器可以直接将当前点云对应的、表征方位角采样间隔的方位角采样信息写入码流,也可以选择将用于计算方位角采样信息的相关信息写入码流,从而使得解码器可以根据该相关信息推导出当前点云对应的、表征方位角采样间隔的方位角采样信息。It can be understood that in an embodiment of the present application, the encoder can directly write the azimuth sampling information corresponding to the current point cloud and representing the azimuth sampling interval into the bitstream, or it can choose to write the relevant information used to calculate the azimuth sampling information into the bitstream, so that the decoder can derive the azimuth sampling information corresponding to the current point cloud and representing the azimuth sampling interval based on the relevant information.

进一步地,在本申请的实施例中,编码器可以将第一方位角参数写入码流传输至解码端,相应的,在进行方位角采样信息的确定时,解码器可以解码码流,确定第一方位角参数,然后根据第一方位角参数和预设数值,进一步确定出当前点云对应的方位角采样信息。Furthermore, in an embodiment of the present application, the encoder may write the first azimuth parameter into a code stream for transmission to a decoding end. Accordingly, when determining the azimuth sampling information, the decoder may decode the code stream, determine the first azimuth parameter, and then further determine the azimuth sampling information corresponding to the current point cloud based on the first azimuth parameter and a preset value.

也就是说,在本申请的实施例中,编码器可以先根据方位角采样信息和预设数值确定第一方位角参数;然后再将第一方位角参数写入码流。That is to say, in the embodiment of the present application, the encoder may first determine the first azimuth parameter according to the azimuth sampling information and the preset value; and then write the first azimuth parameter into the bitstream.

可以理解的是,在本申请的实施例中,预设数值可以预先设置的任意数值,本申请不进行具体限定,例如,预设数值可以为1。It can be understood that, in the embodiments of the present application, the preset value can be any preset value, and the present application does not specifically limit it. For example, the preset value can be 1.

示例性的,在一些实施例中,编码器可以直接将当前点云对应的方位角采样信息,如方位角采样间隔写入码流。For example, in some embodiments, the encoder may directly send the azimuth sampling information corresponding to the current point cloud, such as the azimuth sampling interval Write code stream.

示例性的,在一些实施例中,编码器也可以可以先确定第一方位角参数geom_angular_azimuth_speed_minus1,然后再将第一方位角参数写入码流。其中,可以通过方位角采样信息(例如方位角采样间隔)与预设数值(例如1)计算获得对应的第一方位角参数geom_angular_azimuth_speed_minus1。例如公式(1)。For example, in some embodiments, the encoder may first determine the first azimuth parameter geom_angular_azimuth_speed_minus1, and then write the first azimuth parameter into the bitstream. ) and a preset value (eg, 1) to calculate the corresponding first azimuth parameter geom_angular_azimuth_speed_minus1. For example, formula (1).

其中,语法元素geom_angular_azimuth_speed_minus1可以通过码流从编码端传输至解码端,该geom_angular_azimuth_speed_minus1可以为几何参数集(Geometric parameter set,GPS)中的语法元素。Among them, the syntax element geom_angular_azimuth_speed_minus1 can be transmitted from the encoding end to the decoding end through the bit stream, and the geom_angular_azimuth_speed_minus1 can be a syntax element in a geometric parameter set (GPS).

进一步地,在本申请的实施例中,在确定当前点云对应的方位角采样信息的同时,还可以确定当前点云对应的径向距离信息,同时将当前点云对应的径向距离信息写入码流传输至解码端。Furthermore, in an embodiment of the present application, while determining the azimuth sampling information corresponding to the current point cloud, the radial distance information corresponding to the current point cloud can also be determined, and the radial distance information corresponding to the current point cloud can be written into the code stream and transmitted to the decoding end.

需要说明的是,在本申请的实施例中,当前点云对应的径向距离信息可以对当前点云对应的径向距离最小值,即半径最小值进行确定。It should be noted that, in the embodiment of the present application, the radial distance information corresponding to the current point cloud can determine the minimum radial distance corresponding to the current point cloud, that is, the minimum radius.

进一步地,在本申请的实施例中,当前点云对应的径向距离信息可以通过语法元素的形式进行表示,即编码器在编码径向距离信息之后,将码流传输至解码端之后,解码器解码码流,获得表示径向距离信息的语法元素,从而确定径向距离信息。Furthermore, in an embodiment of the present application, the radial distance information corresponding to the current point cloud can be represented in the form of a syntax element, that is, after the encoder encodes the radial distance information and transmits the code stream to the decoding end, the decoder decodes the code stream to obtain the syntax element representing the radial distance information, thereby determining the radial distance information.

示例性的,在一些实施例中,编码器也可以可以先确定径向距离信息rmin,然后再通过语法元素pgeom_min_radius传输该径向距离信息rmin,相应的,解码器解码码流可以先确定表示径向距离信息的语法元素pgeom_min_radius,然后再通过pgeom_min_radius确定对应的径向距离信息rmin。例如公式(2)。 For example, in some embodiments, the encoder may first determine the radial distance information r min , and then transmit the radial distance information r min through the syntax element pgeom_min_radius. Correspondingly, the decoder may first determine the syntax element pgeom_min_radius representing the radial distance information when decoding the bitstream, and then determine the corresponding radial distance information r min through pgeom_min_radius. For example, formula (2).

其中,语法元素pgeom_min_radius可以通过码流从编码端传输至解码端,该pgeom_min_radius可以为几何块头部(Geometry block header,GPS)信息中的语法元素。Among them, the syntax element pgeom_min_radius can be transmitted from the encoding end to the decoding end through the bit stream, and the pgeom_min_radius can be a syntax element in the geometry block header (GPS) information.

需要说明的是,在本申请的实施例中,本申请实施例提出的点云编码方法,可以用于基于基于预测树的几何编码处理过程中。其中,当前点云可以为待编码的点云。It should be noted that, in the embodiment of the present application, the point cloud encoding method proposed in the embodiment of the present application can be used in the geometric encoding processing based on the prediction tree, wherein the current point cloud can be the point cloud to be encoded.

可以理解的是,在本申请的实施例中,当前点云中的点的几何信息可以使用柱面坐标的形式进行表示,例如,当前点云中的点的几何信息可以表示为(r,i),其中r是点的径向距离,也可称之为半径;是点的方位角;θ是点所属的激光束的俯仰角。It can be understood that in the embodiment of the present application, the geometric information of the point in the current point cloud can be expressed in the form of cylindrical coordinates. For example, the geometric information of the point in the current point cloud can be expressed as (r, i), where r is the radial distance of the point, also known as the radius; is the azimuth angle of the point; θ is the elevation angle of the laser beam to which the point belongs.

也就是说,在本申请的实施例中,当前点云中的点的几何信息可以通过径向距离分量、方位角分量以及俯仰角分量进行表示。That is to say, in the embodiment of the present application, the geometric information of the point in the current point cloud can be represented by a radial distance component, an azimuth component, and a pitch angle component.

步骤202、根据当前点云对应的方位角采样信息确定当前点云对应的初始预测值,并根据初始预测值确定当前点云中点的预测值。Step 202: determine an initial prediction value corresponding to the current point cloud according to the azimuth sampling information corresponding to the current point cloud, and determine a prediction value of a midpoint of the current point cloud according to the initial prediction value.

在本申请的实施例中,在确定当前点云对应的方位角采样信息之后,可以根据当前点云对应的方位角采样信息完成对预测值的初始化,确定出当前点云对应的初始预测值,从而可以进一步根据初始预测值确定出当前点云中点的预测值。In an embodiment of the present application, after determining the azimuth sampling information corresponding to the current point cloud, the prediction value can be initialized according to the azimuth sampling information corresponding to the current point cloud, and the initial prediction value corresponding to the current point cloud can be determined, so that the prediction value of the midpoint of the current point cloud can be further determined based on the initial prediction value.

需要说明的是,在本申请的实施例中,可以选择根据方位角采样信息和径向距离信息确定当前点云对应的初始预测值。It should be noted that, in the embodiments of the present application, it is possible to select to determine the initial prediction value corresponding to the current point cloud based on the azimuth sampling information and the radial distance information.

进一步地,在本申请的实施例中,在进行当前点云的预测值的初始化时,可以使用当前点云对应的方位角采样信息来实现初始预测值的确定,同时还可以使用当前点云对应的径向距离信息来实现初始预测值的确定。其中,该方位角采样信息可以用于对初始预测值的方位角分量进行确定。该径向距离信息可以用于对初始预测值的径向距离分量进行确定。Further, in an embodiment of the present application, when initializing the prediction value of the current point cloud, the azimuth sampling information corresponding to the current point cloud can be used to determine the initial prediction value, and the radial distance information corresponding to the current point cloud can also be used to determine the initial prediction value. The azimuth sampling information can be used to determine the azimuth component of the initial prediction value. The radial distance information can be used to determine the radial distance component of the initial prediction value.

可以理解的是,在本申请的实施例中,当前点云对应的初始预测值可以为当前点云对应的初始化后的几何信息预测值。It can be understood that, in the embodiment of the present application, the initial prediction value corresponding to the current point cloud may be the initialized geometric information prediction value corresponding to the current point cloud.

可以理解的是,在本申请的实施例中,由于当前点云中任意点的几何信息可以表示为柱面坐标(r,i),因此在对当前点云的预测值进行初始化时,最终获得的初始预测值也可以通过柱面坐标进行表示,因此初始预测值也可以通过径向距离分量、方位角分量以及俯仰角分量进行表示。It can be understood that in the embodiment of the present application, since the geometric information of any point in the current point cloud can be expressed as cylindrical coordinates (r, i), therefore, when initializing the prediction value of the current point cloud, the final obtained initial prediction value can also be represented by cylindrical coordinates, so the initial prediction value can also be represented by radial distance components, azimuth components, and pitch angle components.

相应的,在本申请的实施例中,在对当前点云的预测值进行初始化的过程中,可以使用当前点云对应的方位角采样信息对初始预测值中的方位角分量进行确定。Correspondingly, in an embodiment of the present application, in the process of initializing the predicted value of the current point cloud, the azimuth sampling information corresponding to the current point cloud can be used to determine the azimuth component in the initial predicted value.

相应的,在本申请的实施例中,在对当前点云的预测值进行初始化的过程中,可以使用当前点云对应的径向距离信息对初始预测值中的径向距离分量进行确定。Correspondingly, in an embodiment of the present application, in the process of initializing the predicted value of the current point cloud, the radial distance information corresponding to the current point cloud can be used to determine the radial distance component in the initial predicted value.

也就是说,在本申请的实施例中,结合当前点云对应的方位角采样信息和径向距离信息进行当前点云对应的预测值的初始时,最终获得的初始预测值中的方位角分量由方位角采样信息确定,同时,径向距离分量由径向距离信息确定。That is to say, in an embodiment of the present application, when the initial prediction value corresponding to the current point cloud is performed in combination with the azimuth sampling information and radial distance information corresponding to the current point cloud, the azimuth component in the initial prediction value finally obtained is determined by the azimuth sampling information, and at the same time, the radial distance component is determined by the radial distance information.

进一步地,在本申请的实施例中,在根据方位角采样信息和径向距离信息确定当前点云对应的初始预测值时,可以先根据根据方位角采样信息确定初始化参数;然后再根据方位角采样信息和初始化参数,确定初始预测值对应的方位角分量。Furthermore, in an embodiment of the present application, when determining the initial prediction value corresponding to the current point cloud based on the azimuth sampling information and the radial distance information, the initialization parameters can be first determined based on the azimuth sampling information; and then the azimuth component corresponding to the initial prediction value can be determined based on the azimuth sampling information and the initialization parameters.

需要说明的是,在本申请的实时中,在确定方位角采样信息(如方位角采样间隔)之后,便可以先利用方位角采样信息计算获得初始化参数,该初始化参数可以用于在初始化预测值的过程中对方位角分量进行调整和控制,接着便可以结合方位角采样信息和初始化参数,进一步计算获得初始预测值中的方位角分量。It should be noted that in the real time of the present application, after determining the azimuth sampling information (such as the azimuth sampling interval), the azimuth sampling information can be used to calculate the initialization parameters, and the initialization parameters can be used to adjust and control the azimuth component in the process of initializing the predicted value. Then, the azimuth sampling information and the initialization parameters can be combined to further calculate the azimuth component in the initial predicted value.

可以理解的是,在本申请的实施例中,可以在方位角采样信息的基础上,结合任意的数值,通过任意的计算方式来进行初始化参数的确定。It is understandable that, in the embodiments of the present application, the initialization parameters may be determined based on the azimuth sampling information in combination with any numerical value and by any calculation method.

示例性的,在一些实施例中,假设方位角采样信息为方位角采样间隔那么可以根据计算获得初始化参数k,如公式(3)所示。Exemplarily, in some embodiments, it is assumed that the azimuth sampling information is the azimuth sampling interval Then according to The initialization parameter k is calculated as shown in formula (3).

其中,round()为Round函数,是指返回一个数值,该数值是按照指定的小数位数进行四舍五入运算的结果。Among them, round() is a Round function, which means returning a value that is the result of rounding to a specified number of decimal places.

可以理解的是,在本申请的实施例中,除了上述公式(3)以外,也可以采用其他方式确定初始化参数,本申请对初始化参数的计算方式不进行限制。It is understandable that, in the embodiments of the present application, in addition to the above formula (3), other methods may be used to determine the initialization parameters, and the present application does not limit the calculation method of the initialization parameters.

需要说明的是,在本申请的实施例中,可以在方位角采样信息和初始化参数的基础上,结合任意的数值,通过任意的计算方式来进行初始预测值的方位角分量的确定。It should be noted that, in the embodiments of the present application, the azimuth component of the initial prediction value may be determined by any calculation method in combination with any numerical value based on the azimuth sampling information and the initialization parameters.

示例性的,在一些实施例中,假设方位角采样信息为方位角采样间隔初始化参数为k,最终计算获得方位角分量如公式(4)所示。 Exemplarily, in some embodiments, it is assumed that the azimuth sampling information is the azimuth sampling interval The initialization parameter is k, and the azimuth component is finally calculated. As shown in formula (4).

可以理解的是,在本申请的实施例中,除了上述公式(4)以外,也可以采用其他方式确定方位角分量,本申请对方位角分量的计算方式不进行限制。It is understandable that in the embodiments of the present application, in addition to the above formula (4), other methods can also be used to determine the azimuth component, and the present application does not limit the calculation method of the azimuth component.

进一步地,在本申请的实施例中,在根据方位角采样信息和径向距离信息确定当前点云对应的初始预测值时,可以直接根据径向距离信息确定初始预测值对应的径向距离分量。Further, in an embodiment of the present application, when determining an initial prediction value corresponding to the current point cloud based on the azimuth sampling information and the radial distance information, the radial distance component corresponding to the initial prediction value can be directly determined based on the radial distance information.

示例性的,在一些实施例中,假设径向距离信息为当前点云的最小径向值rmin,最终计算获得径向距离分量r0,如公式(5)所示。Exemplarily, in some embodiments, it is assumed that the radial distance information is the minimum radial value r min of the current point cloud, and the radial distance component r 0 is finally calculated, as shown in formula (5).

由此可见,在本申请的实施例中,在根据方位角采样信息和径向距离信息确定当前点云对应的初始预测值之后,最终获得的初始预测值的径向距离分量为rmin,方位角分量为 It can be seen that in the embodiment of the present application, after determining the initial prediction value corresponding to the current point cloud according to the azimuth sampling information and the radial distance information, the radial distance component of the initial prediction value finally obtained is r min , and the azimuth component is

可以理解的是,在本申请的实施例中,在进行当前点云的预测值的初始化过程中,同时可以将初始预测值的俯仰角分量设置为一个固定的数值,例如,可以将俯仰角分量设置为0。It can be understood that in the embodiments of the present application, during the process of initializing the predicted value of the current point cloud, the pitch angle component of the initial predicted value can also be set to a fixed value, for example, the pitch angle component can be set to 0.

也就是说,在本申请的实施例中,在完成对当前点云的预测值的初始化之后,初始预测值可以表示为(rmin0)。That is, in the embodiment of the present application, after the initialization of the prediction value of the current point cloud is completed, the initial prediction value can be expressed as (r min , 0).

进一步地,在本申请的实施例中,在确定当前点云对应的径向距离信息之后,当进行初始预测值的确定时,还可以选择根据径向距离信息确定初始预测值的径向距离分量,同时将方位角分量和俯仰角分量分别设置为固定的数值,例如,将方位角分量设置为0,同时将俯仰角分量设置为0。Furthermore, in an embodiment of the present application, after determining the radial distance information corresponding to the current point cloud, when determining the initial prediction value, you can also choose to determine the radial distance component of the initial prediction value based on the radial distance information, and set the azimuth component and the pitch angle component to fixed values, for example, set the azimuth component to 0, and set the pitch angle component to 0.

也就是说,在本申请的实施例中,还可以选择采用常见的初始化方案,最终获得的初始预测值可以表示为(rmin,0,0)。That is to say, in the embodiment of the present application, a common initialization scheme may also be selected, and the initial prediction value finally obtained may be expressed as (r min , 0, 0).

由此可见,本申请实施例提出的点云编码方法,在对当前点云的预测值进行初始化时,可以选择根据当前点云对应的方位角采样信息对初始预测值的方位角分量进行确定,使得初始预测值的设置更为合理。It can be seen that the point cloud encoding method proposed in the embodiment of the present application, when initializing the prediction value of the current point cloud, can choose to determine the azimuth component of the initial prediction value according to the azimuth sampling information corresponding to the current point cloud, so that the setting of the initial prediction value is more reasonable.

进一步地,在本申请的实施例中,在根据当前点云对应的方位角采样信息确定当前点云对应的初始预测值之后,可以根据初始预测值确定当前点云中点的预测值。Further, in an embodiment of the present application, after determining an initial prediction value corresponding to the current point cloud according to the azimuth sampling information corresponding to the current point cloud, the prediction value of the midpoint of the current point cloud can be determined according to the initial prediction value.

需要说明的是,在本申请的实施例中,在根据初始预测值确定当前点云中点的预测值时,可以先将初始预测值确定为当前点云对应的预测树的根节点的预测值;然后再基于根节点的预测值,确定当前点云中的其他点的预测值。It should be noted that in an embodiment of the present application, when determining the prediction value of a point in the current point cloud based on the initial prediction value, the initial prediction value can be first determined as the prediction value of the root node of the prediction tree corresponding to the current point cloud; and then based on the prediction value of the root node, the prediction values of other points in the current point cloud are determined.

进一步地,在本申请的实施例中,对于当前点云中的当前点,在基于初始预测值确定出当前点的预测值之后,可以进一步根据当前点云中当前点对应的预测值,确定当前点对应的预测残差;然后可以根据当前点对应的量化参数对预测残差进行量化,确定当前点对应的量化后的系数残差。Furthermore, in an embodiment of the present application, for the current point in the current point cloud, after the prediction value of the current point is determined based on the initial prediction value, the prediction residual corresponding to the current point can be further determined based on the prediction value corresponding to the current point in the current point cloud; then the prediction residual can be quantized according to the quantization parameter corresponding to the current point to determine the quantized coefficient residual corresponding to the current point.

需要说明的是,在本申请的实施例中,在根据当前点对应的量化参数对预测残差进行量化,确定当前点对应的量化后的系数残差之后,可以将当前点对应的量化参数和量化后的预测残差写入码流。It should be noted that in an embodiment of the present application, after the prediction residual is quantized according to the quantization parameter corresponding to the current point and the quantized coefficient residual corresponding to the current point is determined, the quantization parameter corresponding to the current point and the quantized prediction residual can be written into the bitstream.

进一步地,在本申请的实施例中,在对当前点进行几何信息的预测处理时,还可以确定当前点对应的模式标识信息;其中,模式标识信息用于指示当前点对应的预测模式为帧间模式或帧内模式。Furthermore, in an embodiment of the present application, when performing prediction processing on the geometric information of the current point, the mode identification information corresponding to the current point can also be determined; wherein the mode identification information is used to indicate whether the prediction mode corresponding to the current point is an inter-frame mode or an intra-frame mode.

需要说明的是,在本申请的实施例中,编码器可以根据率失真算法确定当前点对应的模式标识信息,其中,对于当前点(待编码点),可以根据帧内预测算法或帧间预测算法确定几何信息的预测值,然后通过率失真优化算法选取码率最小的预测值作为当前点的预测值,同时确定出对应的模式标识信息。It should be noted that in an embodiment of the present application, the encoder can determine the mode identification information corresponding to the current point based on the rate-distortion algorithm, wherein, for the current point (the point to be encoded), the prediction value of the geometric information can be determined according to the intra-frame prediction algorithm or the inter-frame prediction algorithm, and then the prediction value with the smallest bit rate is selected as the prediction value of the current point through the rate-distortion optimization algorithm, and the corresponding mode identification information is determined at the same time.

进一步地,在本申请的实施例中,编码器在确定当前点对应的模式标识信息之后,还可以将当前点对应的模式标识信息写入码流,传输至解码端。Furthermore, in an embodiment of the present application, after determining the mode identification information corresponding to the current point, the encoder may also write the mode identification information corresponding to the current point into the code stream and transmit it to the decoding end.

也就是说,在本申请的实施例中,还可以通过率失真算法确定当前点云中的当前点对应的模式标识信息,并将模式标识信息写入码流,相应的,解码器通过解码码流确定当前点云中的当前点的模式标识信息,从而根据模式标识信息确定对当前点采用帧内预测模式或者帧间预测模式,最终便可以根据对应的预测模式确定出当前点的预测值。That is to say, in an embodiment of the present application, the mode identification information corresponding to the current point in the current point cloud can also be determined by a rate-distortion algorithm, and the mode identification information can be written into the bit stream. Correspondingly, the decoder determines the mode identification information of the current point in the current point cloud by decoding the bit stream, and thus determines whether to adopt an intra-frame prediction mode or an inter-frame prediction mode for the current point according to the mode identification information, and finally determines the prediction value of the current point according to the corresponding prediction mode.

进一步地,在本申请的实施例中,图11为本申请实施例提出的点云编码方法的实现流程示意图二,如图11所示,编码器进行点云编码的方法还可以包括以下步骤:Further, in an embodiment of the present application, FIG. 11 is a second schematic diagram of the implementation flow of the point cloud encoding method proposed in an embodiment of the present application. As shown in FIG. 11 , the method for performing point cloud encoding by the encoder may further include the following steps:

步骤203、确定初始化模式标识信息。Step 203: Determine initialization mode identification information.

在本申请的实施例中,还可以确定初始化标识信息。其中,初始化模式标识信息可以对当前点云所使用的预测值的初始化模式进行确定和指示,其中,当前点云所使用的预测值的初始化模式可以包括第一初始化模式和第二初始化模式。In an embodiment of the present application, initialization identification information may also be determined. The initialization mode identification information may determine and indicate an initialization mode of a prediction value used by the current point cloud, wherein the initialization mode of a prediction value used by the current point cloud may include a first initialization mode and a second initialization mode.

也就是说,在本申请的实施例中,基于初始化模式标识信息,可以确定当前点云所使用的初始化模式为第一初始化模式或第二初始化模式。That is to say, in the embodiment of the present application, based on the initialization mode identification information, it can be determined that the initialization mode used by the current point cloud is the first initialization mode or the second initialization mode.

需要说明的是,在本申请的实施例中,第一初始化模式可以表征使用码流中传输的方位角的相关信息来进行预测值的初始化的模式;第二初始化模式可以表征不使用码流中传输的方位角的相关信息来进行预测值的初始化的模式。 It should be noted that, in an embodiment of the present application, the first initialization mode may represent a mode for initializing the prediction value using the azimuth angle related information transmitted in the code stream; the second initialization mode may represent a mode for initializing the prediction value without using the azimuth angle related information transmitted in the code stream.

进一步地,在本申请的实施例中,在进行初始化模式标识信息的确定之后,可以选择将该初始化模式标识信息写入码流,即初始化模式标识信息可以通过码流从编码端传输至解码端。Further, in an embodiment of the present application, after the initialization mode identification information is determined, the initialization mode identification information can be selected to be written into the bitstream, that is, the initialization mode identification information can be transmitted from the encoding end to the decoding end through the bitstream.

进一步地,在本申请的实施例中,可以选择通过当前点云对应的语法表确定初始化模式标识信息。也就是说,在本申请的实施例中,初始化模式标识信息可以设置在当前点云对应的语法表,如syntax table中。Further, in an embodiment of the present application, the initialization mode identification information can be determined by the syntax table corresponding to the current point cloud. That is, in an embodiment of the present application, the initialization mode identification information can be set in the syntax table corresponding to the current point cloud, such as syntax table.

进一步地,在本申请的实施例中,在本申请实施例中,在确定当前点云使用第一初始化模式的情况下,可以设置初始化模式标识信息的取值为第一值;在确定当前点云使用第二初始化模式的情况下,可以设置初始化模式标识信息的取值为第二值。Further, in an embodiment of the present application, in an embodiment of the present application, when it is determined that the current point cloud uses the first initialization mode, the value of the initialization mode identification information can be set to a first value; when it is determined that the current point cloud uses the second initialization mode, the value of the initialization mode identification information can be set to a second value.

需要说明的是,在本申请的实施例中,第一值与第二值不同,而且第一值和第二值可以是参数形式,也可以是数字形式。It should be noted that, in the embodiments of the present application, the first value is different from the second value, and the first value and the second value may be in parameter form or in digital form.

示例性的,在一些实施例中,第一值可以为0,第二值可以为1。例如,当初始化模式标识信息的取值为0时,可以确定对当前点云使用第一初始化模式进行预测值的初始化处理,即根据当前点云对应的方位角采样信息确定当前点云的初始预测值的方位角分量;当初始化模式标识信息的取值为1时,可以确定对当前点云使用第二初始化模式进行预测值的初始化处理,即不根据当前点云对应的方位角采样信息确定当前点云的初始预测值,而是直接将当前点云的初始预测值的方位角分量设置为第三值,例如第三值为0。Exemplarily, in some embodiments, the first value may be 0, and the second value may be 1. For example, when the value of the initialization mode identification information is 0, it can be determined that the first initialization mode is used to initialize the prediction value of the current point cloud, that is, the azimuth component of the initial prediction value of the current point cloud is determined according to the azimuth sampling information corresponding to the current point cloud; when the value of the initialization mode identification information is 1, it can be determined that the second initialization mode is used to initialize the prediction value of the current point cloud, that is, the initial prediction value of the current point cloud is not determined according to the azimuth sampling information corresponding to the current point cloud, but the azimuth component of the initial prediction value of the current point cloud is directly set to a third value, for example, the third value is 0.

进一步地,在本申请的实施例中,在确定当前点云对应的初始化模式标识信息之后,可以将初始化模式标识信息写入码流,传输至解码端。Furthermore, in an embodiment of the present application, after determining the initialization mode identification information corresponding to the current point cloud, the initialization mode identification information can be written into the code stream and transmitted to the decoding end.

需要说明的是,在本申请的实施例中,初始化模式标识信息可以是写入在概述(profile)中的参数,也可以是一个标志(flag)的取值,这里对此不作具体限定。It should be noted that, in the embodiments of the present application, the initialization mode identification information may be a parameter written in a profile, or may be a value of a flag, which is not specifically limited here.

示例性的,在本申请的实施例中,初始化模式标识信息可以作为GPS级别的语法元素,也可以作为GBH级别的语法元素,本申请不进行具体限定。Exemplarily, in an embodiment of the present application, the initialization mode identification information may be used as a syntax element at the GPS level or as a syntax element at the GBH level, and the present application does not make any specific limitation thereto.

步骤204、在初始化模式标识信息指示当前点云使用第一初始化模式的情况下,执行方位角采样信息和径向距离信息的确定流程。Step 204: When the initialization mode identification information indicates that the current point cloud uses the first initialization mode, a process for determining the azimuth sampling information and the radial distance information is executed.

在本申请的实施例中,在确定初始化模式标识信息之后,如果初始化模式标识信息指示当前点云使用第一初始化模式,那么便可以执行当前点云对应的方位角采样信息和径向距离信息的确定流程,从而可以进一步根据当前点云对应的方位角采样信息和径向距离信息对当前点云的预测值进行初始化处理,确定对应的初始预测值。In an embodiment of the present application, after determining the initialization mode identification information, if the initialization mode identification information indicates that the current point cloud uses the first initialization mode, then the process of determining the azimuth sampling information and radial distance information corresponding to the current point cloud can be executed, so that the predicted value of the current point cloud can be further initialized according to the azimuth sampling information and radial distance information corresponding to the current point cloud to determine the corresponding initial prediction value.

可以理解的是,在本申请的实施例中,基于第一初始化模式,在进行当前点云的预测值的初始化处理时,可以选择根据当前点云对应的方位角采样间隔(方位角采样信息)来进行初始预测值的方位角分量的确定,例如将初始预测值的方位角分量确定为 It can be understood that in the embodiment of the present application, based on the first initialization mode, when initializing the predicted value of the current point cloud, it is possible to select the azimuth component of the initial predicted value to be determined according to the azimuth sampling interval (azimuth sampling information) corresponding to the current point cloud, for example, the azimuth component of the initial predicted value is determined as

步骤205、在初始化模式标识信息指示当前点云使用第二初始化模式的情况下,执行径向距离信息的确定流程。Step 205: When the initialization mode identification information indicates that the current point cloud uses the second initialization mode, a radial distance information determination process is executed.

在本申请的实施例中,在确定初始化模式标识信息之后,如果初始化模式标识信息指示当前点云使用第二初始化模式,那么便可以执行当前点云对应的径向距离信息的确定流程,从而可以进一步根据当前点云对应的径向距离信息对当前点云的预测值进行初始化处理,确定对应的初始预测值。In an embodiment of the present application, after determining the initialization mode identification information, if the initialization mode identification information indicates that the current point cloud uses the second initialization mode, then the process of determining the radial distance information corresponding to the current point cloud can be executed, so that the predicted value of the current point cloud can be further initialized according to the radial distance information corresponding to the current point cloud to determine the corresponding initial prediction value.

可以理解的是,在本申请的实施例中,基于第二初始化模式,在进行当前点云的预测值的初始化处理时,可以选择直接将初始预测值的方位角分量的确定为固定的数值,例如确定为0。It can be understood that in the embodiment of the present application, based on the second initialization mode, when initializing the predicted value of the current point cloud, it is possible to choose to directly determine the azimuth component of the initial predicted value as a fixed value, for example, as 0.

进一步地,在本申请的实施例中,图12为本申请实施例提出的点云编码方法的实现流程示意图三,如图12所示,编码器进行点云编码的方法还可以包括以下步骤:Further, in the embodiment of the present application, FIG. 12 is a schematic diagram of the implementation flow of the point cloud encoding method proposed in the embodiment of the present application. As shown in FIG. 12, the method for the encoder to perform point cloud encoding may further include the following steps:

步骤206、在初始化模式标识信息指示当前点云使用第一初始化模式的情况下,根据方位角采样信息确定初始预测值的方位角分量。Step 206: When the initialization mode identification information indicates that the current point cloud uses the first initialization mode, determine the azimuth component of the initial prediction value according to the azimuth sampling information.

在本申请的实施例中,在确定初始化模式标识信息之后,如果初始化模式标识信息指示当前点云使用第一初始化模式,那么,基于第一初始化模式,在进行当前点云的预测值的初始化处理时,可以选择根据当前点云对应的方位角采样间隔(方位角采样信息)来进行初始预测值的方位角分量的确定,例如将初始预测值的方位角分量确定为 In an embodiment of the present application, after determining the initialization mode identification information, if the initialization mode identification information indicates that the current point cloud uses the first initialization mode, then, based on the first initialization mode, when performing initialization processing of the predicted value of the current point cloud, it is possible to select the azimuth component of the initial predicted value according to the azimuth sampling interval (azimuth sampling information) corresponding to the current point cloud to determine, for example, the azimuth component of the initial predicted value is determined as

步骤207、在初始化模式标识信息指示当前点云使用第二初始化模式的情况下,将初始预测值的方位角分量设置为第三值。Step 207: When the initialization mode identification information indicates that the current point cloud uses the second initialization mode, the azimuth component of the initial prediction value is set to a third value.

在本申请的实施例中,在确定初始化模式标识信息之后,如果初始化模式标识信息指示当前点云使用第二初始化模式,那么,基于第二初始化模式,在进行当前点云的预测值的初始化处理时,可以选择直接将初始预测值的方位角分量的确定为第三值。其中,第三值可以为任意数值,例如0。 In an embodiment of the present application, after determining the initialization mode identification information, if the initialization mode identification information indicates that the current point cloud uses the second initialization mode, then, based on the second initialization mode, when performing initialization processing of the predicted value of the current point cloud, the azimuth component of the initial predicted value can be directly determined as the third value. The third value can be any value, such as 0.

由此可见,预测值的方位角分量的预测值初始化方式可以采用多种方式,具体采用哪种方式由如初始化模式标识信息的头信息表示。It can be seen that the azimuth component of the predicted value There are many ways to initialize the predicted value, and the specific method is indicated by the header information such as the initialization mode identification information.

示例性的,在一些实施例中,在头信息,如GPS或/和GBH中设置一个语法元素,如Exemplarily, in some embodiments, a syntax element is set in the header information, such as GPS and/or GBH, such as

geom_angular_phi_ini_zero,该语法元素可以表示当前点云的柱面坐标(r,i)中方位角的预测初始值 geom_angular_phi_ini_zero, this syntax element can represent the cylindrical coordinates of the current point cloud (r, i) Azimuth The predicted initial value of

示例性的,在一些实施例中,当geom_angular_phi_ini_zero=1时,表示的预测值初始化为0,即初始预测值的方位角分量为0,也就是说,当待编(解)码点是预测树的根节点时,其柱面坐标的预测值为0。Exemplarily, in some embodiments, when geom_angular_phi_ini_zero=1, it means The predicted value is initialized to 0, that is, the azimuth component of the initial predicted value is 0, that is, when the code point to be encoded (decoded) is the root node of the prediction tree, its cylindrical coordinates The predicted value is 0.

示例性的,在一些实施例中,当geom_angular_phi_ini_zero=0时,表示的预测值初始化为也就是说,当待编(解)码点是预测树的根节点时,其柱面坐标的预测值为 Exemplarily, in some embodiments, when geom_angular_phi_ini_zero=0, it means The predicted value is initialized as That is, when the code point to be encoded (decoded) is the root node of the prediction tree, its cylindrical coordinates The predicted value is

可以理解的是,在本申请的实施例中,与常见技术相比,通过第一初始化模式进行预测值的初始化时,可以利用码流中传输的方位角采样信息(如方位角采样阈值)对初始预测值的方位角分量进行确定,而不再直接将初始预测值的方位角分量初始化为0,这样的预测值初始化方式更为合理,可以有效提升几何信息的预测效果。It can be understood that in the embodiments of the present application, compared with common technologies, when the prediction value is initialized through the first initialization mode, the azimuth sampling information (such as the azimuth sampling threshold) transmitted in the code stream can be used to determine the azimuth component of the initial prediction value, instead of directly initializing the azimuth component of the initial prediction value to 0. This prediction value initialization method is more reasonable and can effectively improve the prediction effect of geometric information.

综上所述,通过步骤201至步骤207所提出的编码方法,可以先确定当前点云对应的方位角采样信息和径向距离信息,然后再结合方位角采样信息和径向距离信息进行当前点云的预测值的初始化处理,具体地,可以根据方位角采样信息对初始预测值的方位角分量进行确定,同时,根据径向距离信息对初始预测值的径向距离分量进行确定。To summarize, through the encoding method proposed in steps 201 to 207, the azimuth sampling information and radial distance information corresponding to the current point cloud can be determined first, and then the predicted value of the current point cloud can be initialized in combination with the azimuth sampling information and the radial distance information. Specifically, the azimuth component of the initial predicted value can be determined according to the azimuth sampling information, and at the same time, the radial distance component of the initial predicted value can be determined according to the radial distance information.

本实施例提供了一种编码方法,在编码端,确定当前点云对应的方位角采样信息,并将方位角采样信息写入码流;根据当前点云对应的方位角采样信息确定当前点云对应的初始预测值,并根据初始预测值确定当前点云中点的预测值。由此可见,在本申请的实施例中,在对当前点云的预测值进行初始化的过程中,可以选择通过当前点云对应的方位角采样信息来确定对应的初始预测值,能够充分考虑到当前点云的根节点的方位角的实际大小,实现更为合理的预测值的初始化处理。也就是说,在本申请的实施例中,结合方位角采样信息进行预测值的初始化,能够提高预测效果的准确性,从而提升了点云压缩性能。This embodiment provides an encoding method, at the encoding end, determining the azimuth sampling information corresponding to the current point cloud, and writing the azimuth sampling information into the bitstream; determining the initial prediction value corresponding to the current point cloud according to the azimuth sampling information corresponding to the current point cloud, and determining the prediction value of the midpoint of the current point cloud according to the initial prediction value. It can be seen that in the embodiment of the present application, in the process of initializing the prediction value of the current point cloud, it is possible to choose to determine the corresponding initial prediction value through the azimuth sampling information corresponding to the current point cloud, which can fully consider the actual size of the azimuth of the root node of the current point cloud, and achieve more reasonable initialization processing of the prediction value. In other words, in the embodiment of the present application, initializing the prediction value in combination with the azimuth sampling information can improve the accuracy of the prediction effect, thereby improving the point cloud compression performance.

在本申请的再一实施例中,基于前述实施例相同的发明构思,图13为编码器的组成结构示意图一,如图13所示,编码器100可以包括:第一确定单元111和编码单元112;其中,In yet another embodiment of the present application, based on the same inventive concept as the above-mentioned embodiment, FIG. 13 is a schematic diagram of a composition structure of an encoder. As shown in FIG. 13 , the encoder 100 may include: a first determining unit 111 and an encoding unit 112; wherein,

所述第一确定单元111,配置为确定所述当前点云对应的方位角采样信息;The first determining unit 111 is configured to determine the azimuth sampling information corresponding to the current point cloud;

所述编码单元112,配置为将所述方位角采样信息写入码流;The encoding unit 112 is configured to write the azimuth sampling information into a bit stream;

所述第一确定单元111,还配置为根据所述当前点云对应的方位角采样信息确定所述当前点云对应的初始预测值,并根据所述初始预测值确定所述当前点云中点的预测值。The first determination unit 111 is further configured to determine an initial prediction value corresponding to the current point cloud according to the azimuth sampling information corresponding to the current point cloud, and determine a prediction value of a midpoint of the current point cloud according to the initial prediction value.

需要说明的是,在本申请的实施例中,编码器100也可以看作数据处理模式(或“熵编码器”),用于对待编码语法元素的取值进行编码处理。It should be noted that, in the embodiment of the present application, the encoder 100 can also be regarded as a data processing mode (or "entropy encoder"), which is used to encode the values of the grammatical elements to be encoded.

可以理解地,在本申请的实施例中,“单元”可以是部分电路、部分处理器、部分程序或软件等等,当然也可以是模块,还可以是非模块化的。而且在本实施例中的各组成部分可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。It is understandable that in the embodiments of the present application, a "unit" may be a part of a circuit, a part of a processor, a part of a program or software, etc., and of course, it may be a module, or it may be non-modular. Moreover, the components in the present embodiment may be integrated into a processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of a software functional module.

所述集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中,基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或processor(处理器)执行本实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。If 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. Based on this understanding, the technical solution of this embodiment is essentially or the part that contributes to the prior art 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, including several instructions for a computer device (which can be a personal computer, server, or network device, etc.) or a processor to perform all or part of the steps of the method described in this embodiment. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), disk or optical disk, etc., various media that can store program codes.

因此,本申请实施例提供了一种计算机可读存储介质,应用于编码器100,该计算机可读存储介质存储有计算机程序,所述计算机程序被第一处理器执行时实现前述实施例中任一项所述的编码方法。Therefore, an embodiment of the present application provides a computer-readable storage medium, which is applied to the encoder 100. The computer-readable storage medium stores a computer program. When the computer program is executed by the first processor, it implements the encoding method described in any one of the aforementioned embodiments.

基于上述编码器100的组成以及计算机可读存储介质,图14为编码器的组成结构示意图二,如图14所示,编码器100可以包括:第一存储器121和第一处理器122,第一通信接口123和第一总线系统124。第一存储器121、第一处理器122、第一通信接口123通过第一总线系统124耦合在一起。可理解,第一总线系统124用于实现这些组件之间的连接通信。第一总线系统124除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图10中将各种总线都标为第一总线系统124。其中, Based on the composition of the above-mentioned encoder 100 and the computer-readable storage medium, Figure 14 is a second schematic diagram of the composition structure of the encoder. As shown in Figure 14, the encoder 100 may include: a first memory 121 and a first processor 122, a first communication interface 123 and a first bus system 124. The first memory 121, the first processor 122, and the first communication interface 123 are coupled together through the first bus system 124. It can be understood that the first bus system 124 is used to achieve connection and communication between these components. In addition to the data bus, the first bus system 124 also includes a power bus, a control bus, and a status signal bus. However, for the sake of clarity, various buses are labeled as the first bus system 124 in Figure 10. Among them,

第一通信接口123,用于在与其他外部网元之间进行收发信息过程中,信号的接收和发送;The first communication interface 123 is used for receiving and sending signals during the process of sending and receiving information with other external network elements;

所述第一存储器121,用于存储能够在所述第一处理器上运行的计算机程序;The first memory 121 is used to store a computer program that can be run on the first processor;

所述第一处理器122,用于在运行所述计算机程序时,确定所述当前点云对应的方位角采样信息,并将所述方位角采样信息写入码流;根据所述当前点云对应的方位角采样信息确定所述当前点云对应的初始预测值,并根据所述初始预测值确定所述当前点云中点的预测值。The first processor 122 is used to determine the azimuth sampling information corresponding to the current point cloud and write the azimuth sampling information into the code stream when running the computer program; determine the initial prediction value corresponding to the current point cloud according to the azimuth sampling information corresponding to the current point cloud, and determine the prediction value of the midpoint of the current point cloud according to the initial prediction value.

可以理解,本申请实施例中的第一存储器121可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(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)。本申请描述的系统和方法的第一存储器121旨在包括但不限于这些和任意其它适合类型的存储器。It can be understood that the first memory 121 in the embodiment of the present application can be a volatile memory or a non-volatile memory, or can include both volatile and non-volatile memories. Among them, the non-volatile memory can be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory can be a random access memory (RAM), which is used as an external cache. By way of example but not limitation, many forms of RAM are available, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate synchronous DRAM (DDRSDRAM), enhanced synchronous DRAM (ESDRAM), synchronous link DRAM (SLDRAM), and direct RAM bus RAM (DRRAM). The first memory 121 of the systems and methods described in the present application is intended to include, but is not limited to, these and any other suitable types of memory.

而第一处理器122可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过第一处理器122中的硬件的集成逻辑电路或者软件形式的指令完成。上述的第一处理器122可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于第一存储器121,第一处理器122读取第一存储器121中的信息,结合其硬件完成上述方法的步骤。The first processor 122 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the hardware integrated logic circuit or software instructions in the first processor 122. The above-mentioned first processor 122 may be a general-purpose processor, a digital signal processor (Digital Signal Processor, DSP), an application-specific integrated circuit (Application Specific Integrated Circuit, ASIC), a field programmable gate array (Field Programmable Gate Array, FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components. The various methods, steps and logic block diagrams disclosed in the embodiments of the present application can be implemented or executed. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor, etc. The steps of the method disclosed in the embodiments of the present application can be directly embodied as a hardware decoding processor to execute, or the hardware and software modules in the decoding processor can be executed. The software module can be located in a mature storage medium in the field such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory or an electrically erasable programmable memory, a register, etc. The storage medium is located in the first memory 121, and the first processor 122 reads the information in the first memory 121 and completes the steps of the above method in combination with its hardware.

可以理解的是,本申请描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(Application Specific Integrated Circuits,ASIC)、数字信号处理器(Digital Signal Processing,DSP)、数字信号处理设备(DSP Device,DSPD)、可编程逻辑设备(Programmable Logic Device,PLD)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、通用处理器、控制器、微控制器、微处理器、用于执行本申请所述功能的其它电子单元或其组合中。对于软件实现,可通过执行本申请所述功能的模块(例如过程、函数等)来实现本申请所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。It is understood that the embodiments described in this application can be implemented in hardware, software, firmware, middleware, microcode or a combination thereof. For hardware implementation, the processing unit can be implemented in one or more application specific integrated circuits (Application Specific Integrated Circuits, ASIC), digital signal processors (Digital Signal Processing, DSP), digital signal processing devices (DSP Device, DSPD), programmable logic devices (Programmable Logic Device, PLD), field programmable gate arrays (Field-Programmable Gate Array, FPGA), general processors, controllers, microcontrollers, microprocessors, other electronic units for performing the functions described in this application or a combination thereof. For software implementation, the technology described in this application can be implemented by a module (such as a process, function, etc.) that performs the functions described in this application. The software code can be stored in a memory and executed by a processor. The memory can be implemented in the processor or outside the processor.

可选地,作为另一个实施例,第一处理器122还配置为在运行所述计算机程序时,执行前述实施例中任一项所述的方法。Optionally, as another embodiment, the first processor 122 is further configured to execute the method described in any one of the aforementioned embodiments when running the computer program.

本实施例提供了一种编码器,该编码器确定当前点云对应的方位角采样信息,并将方位角采样信息写入码流;根据当前点云对应的方位角采样信息确定当前点云对应的初始预测值,并根据初始预测值确定当前点云中点的预测值。由此可见,在本申请的实施例中,在对当前点云的预测值进行初始化的过程中,可以选择通过当前点云对应的方位角采样信息来确定对应的初始预测值,能够充分考虑到当前点云的根节点的方位角的实际大小,实现更为合理的预测值的初始化处理。也就是说,在本申请的实施例中,结合方位角采样信息进行预测值的初始化,能够提高预测效果的准确性,从而提升了点云压缩性能。The present embodiment provides an encoder that determines the azimuth sampling information corresponding to the current point cloud and writes the azimuth sampling information into the bitstream; determines the initial prediction value corresponding to the current point cloud based on the azimuth sampling information corresponding to the current point cloud, and determines the prediction value of the midpoint of the current point cloud based on the initial prediction value. It can be seen that in the embodiment of the present application, in the process of initializing the prediction value of the current point cloud, it is possible to choose to determine the corresponding initial prediction value through the azimuth sampling information corresponding to the current point cloud, which can fully consider the actual size of the azimuth of the root node of the current point cloud, and achieve more reasonable initialization processing of the prediction value. In other words, in the embodiment of the present application, the initialization of the prediction value in combination with the azimuth sampling information can improve the accuracy of the prediction effect, thereby improving the point cloud compression performance.

在本申请的再一实施例中,基于前述实施例相同的发明构思,图15为解码器的组成结构示意图一,如图15所示,解码器200可以包括:解码单元211和第二确定单元212;其中,In yet another embodiment of the present application, based on the same inventive concept as the above-mentioned embodiment, FIG. 15 is a schematic diagram of a structure of a decoder. As shown in FIG. 15 , the decoder 200 may include: a decoding unit 211 and a second determining unit 212; wherein,

所述解码单元211,配置为解码码流;The decoding unit 211 is configured to decode the code stream;

所述第二确定单元212,配置为确定所述当前点云对应的方位角采样信息;根据所述当前点云对应的方位角采样信息确定所述当前点云对应的初始预测值,并根据所述初始预测值确定所述当前点云中点的预测值。The second determination unit 212 is configured to determine the azimuth sampling information corresponding to the current point cloud; determine the initial prediction value corresponding to the current point cloud according to the azimuth sampling information corresponding to the current point cloud, and determine the prediction value of the midpoint of the current point cloud according to the initial prediction value.

需要说明的是,在本申请的实施例中,解码器200也可以看作数据处理模式(或“熵解码器”),用于对待解码语法元素的取值进行解码处理。It should be noted that, in the embodiment of the present application, the decoder 200 can also be regarded as a data processing mode (or "entropy decoder"), which is used to decode the values of the syntax elements to be decoded.

可以理解地,在本实施例中,“单元”可以是部分电路、部分处理器、部分程序或软件等等,当然也可以是模块,还可以是非模块化的。而且在本实施例中的各组成部分可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。It can be understood that in this embodiment, a "unit" can be a part of a circuit, a part of a processor, a part of a program or software, etc., and of course it can also be a module, or it can be non-modular. Moreover, the components in this embodiment can be integrated into a processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The above-mentioned integrated unit can be implemented in the form of hardware or in the form of a software functional module.

所述集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本实施例提供了一种计算机可读存储介质,应用于解码器200,该计算机可读存储介质存储有计算机程序,所述计算机程序被第二处理器执行时实现前述实施例中任一项所述的方法。If 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. Based on this understanding, this embodiment provides a computer-readable storage medium, which is applied to the decoder 200, and the computer-readable storage medium stores a computer program. When the computer program is executed by the second processor, the method described in any one of the above embodiments is implemented.

基于上述解码器200的组成以及计算机可读存储介质,图16为解码器的组成结构示意图二,如图16所示,解码器200可以包括:第二存储器221和第二处理器222,第二通信接口223和第二总线系统224。第二存储器221和第二处理器222,第二通信接口223通过第二总线系统224耦合在一起。可理解,第二总线系统224用于实现这些组件之间的连接通信。第二总线系统224除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图12中将各种总线都标为第二总线系统224。其中,Based on the composition of the above-mentioned decoder 200 and the computer-readable storage medium, Figure 16 is a second schematic diagram of the composition structure of the decoder. As shown in Figure 16, the decoder 200 may include: a second memory 221 and a second processor 222, a second communication interface 223 and a second bus system 224. The second memory 221 and the second processor 222, and the second communication interface 223 are coupled together through the second bus system 224. It can be understood that the second bus system 224 is used to realize the connection and communication between these components. In addition to the data bus, the second bus system 224 also includes a power bus, a control bus and a status signal bus. However, for the sake of clarity, various buses are marked as the second bus system 224 in Figure 12. Among them,

第二通信接口223,用于在与其他外部网元之间进行收发信息过程中,信号的接收和发送;The second communication interface 223 is used for receiving and sending signals during the process of sending and receiving information with other external network elements;

所述第二存储器221,用于存储能够在所述第二处理器上运行的计算机程序;The second memory 221 is used to store a computer program that can be run on the second processor;

所述第二处理器222,用于在运行所述计算机程序时,解码码流,确定当前点云对应的方位角采样信息;根据所述当前点云对应的方位角采样信息确定所述当前点云对应的初始预测值,并根据所述初始预测值确定所述当前点云中点的预测值。The second processor 222 is used to decode the code stream and determine the azimuth sampling information corresponding to the current point cloud when running the computer program; determine the initial prediction value corresponding to the current point cloud based on the azimuth sampling information corresponding to the current point cloud, and determine the prediction value of the midpoint of the current point cloud based on the initial prediction value.

可以理解,本申请实施例中的第二存储器221可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(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)。本申请描述的系统和方法的第二存储器221旨在包括但不限于这些和任意其它适合类型的存储器。It can be understood that the second memory 221 in the embodiment of the present application can be a volatile memory or a non-volatile memory, or can include both volatile and non-volatile memories. Among them, the non-volatile memory can be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory can be a random access memory (RAM), which is used as an external cache. By way of example but not limitation, many forms of RAM are available, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate synchronous DRAM (DDRSDRAM), enhanced synchronous DRAM (ESDRAM), synchronous link DRAM (SLDRAM), and direct RAM bus RAM (DRRAM). The second memory 221 of the systems and methods described herein is intended to include, but is not limited to, these and any other suitable types of memory.

而第二处理器222可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过第二处理器222中的硬件的集成逻辑电路或者软件形式的指令完成。上述的第二处理器222可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于第二存储器221,第二处理器222读取第二存储器221中的信息,结合其硬件完成上述方法的步骤。The second processor 222 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the hardware integrated logic circuit or software instructions in the second processor 222. The above-mentioned second processor 222 can be a general processor, a digital signal processor (Digital Signal Processor, DSP), an application specific integrated circuit (Application Specific Integrated Circuit, ASIC), a field programmable gate array (Field Programmable Gate Array, FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components. The methods, steps and logic block diagrams disclosed in the embodiments of the present application can be implemented or executed. The general processor can be a microprocessor or the processor can also be any conventional processor, etc. The steps of the method disclosed in the embodiments of the present application can be directly embodied as a hardware decoding processor to execute, or the hardware and software modules in the decoding processor can be executed. The software module can be located in a mature storage medium in the field such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory or an electrically erasable programmable memory, a register, etc. The storage medium is located in the second memory 221, and the second processor 222 reads the information in the second memory 221 and completes the steps of the above method in combination with its hardware.

可以理解的是,本申请描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(Application Specific Integrated Circuits,ASIC)、数字信号处理器(Digital Signal Processing,DSP)、数字信号处理设备(DSP Device,DSPD)、可编程逻辑设备(Programmable Logic Device,PLD)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、通用处理器、控制器、微控制器、微处理器、用于执行本申请所述功能的其它电子单元或其组合中。对于软件实现,可通过执行本申请所述功能的模块(例如过程、函数等)来实现本申请所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。It is understood that the embodiments described in this application can be implemented in hardware, software, firmware, middleware, microcode or a combination thereof. For hardware implementation, the processing unit can be implemented in one or more application specific integrated circuits (Application Specific Integrated Circuits, ASIC), digital signal processors (Digital Signal Processing, DSP), digital signal processing devices (DSP Device, DSPD), programmable logic devices (Programmable Logic Device, PLD), field programmable gate arrays (Field-Programmable Gate Array, FPGA), general processors, controllers, microcontrollers, microprocessors, other electronic units for performing the functions described in this application or a combination thereof. For software implementation, the technology described in this application can be implemented by a module (such as a process, function, etc.) that performs the functions described in this application. The software code can be stored in a memory and executed by a processor. The memory can be implemented in the processor or outside the processor.

可选地,作为另一个实施例,第二处理器222还配置为在运行所述计算机程序时,执行前述实施例中任一项所述的方法。Optionally, as another embodiment, the second processor 222 is further configured to execute any one of the methods described in the foregoing embodiments when running the computer program.

本实施例提供了一种解码器,该解码器解码码流,确定当前点云对应的方位角采样信息;根据当前点云对应的方位角采样信息确定当前点云对应的初始预测值,并根据初始预测值确定当前点云中点的预测值。由此可见,在本申请的实施例中,在对当前点云的预测值进行初始化的过程中,可以选择通过当前点云对应的方位角采样信息来确定对应的初始预测值,能够充分考虑到当前点云的根节点的方位角的实际大小,实现更为合理的预测值的初始化处理。也就是说,在本申请的实施例中,结合方位角采样信息进行预测值的初始化,能够提高预测效果的准确性,从而提升了点云压缩性能。The present embodiment provides a decoder that decodes a code stream to determine the azimuth sampling information corresponding to the current point cloud; determines the initial prediction value corresponding to the current point cloud based on the azimuth sampling information corresponding to the current point cloud, and determines the prediction value of the midpoint of the current point cloud based on the initial prediction value. It can be seen that in the embodiment of the present application, in the process of initializing the prediction value of the current point cloud, the azimuth sampling information corresponding to the current point cloud can be used to determine the corresponding initial prediction value, which can fully consider the actual size of the azimuth of the root node of the current point cloud, and achieve more reasonable initialization processing of the prediction value. In other words, in the embodiment of the present application, the initialization of the prediction value in combination with the azimuth sampling information can improve the accuracy of the prediction effect, thereby improving the point cloud compression performance.

进一步地,本申请的实施例还提出了一种码流,其中,所述码流是根据待编码信息进行比特编码生成的;其中,待编码信息至少包括:初始化模式标识信息,方位角采样信息,径向距离信息,量化参数,量化后的预测残差,模式标识信息。Furthermore, an embodiment of the present application also proposes a code stream, wherein the code stream is generated by bit encoding based on the information to be encoded; wherein the information to be encoded includes at least: initialization mode identification information, azimuth sampling information, radial distance information, quantization parameters, quantized prediction residual, and mode identification information.

需要说明的是,在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。It should be noted that, in this application, the terms "include", "comprises" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, an element defined by the sentence "includes a ..." does not exclude the existence of other identical elements in the process, method, article or device including the element.

上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。The serial numbers of the above-mentioned embodiments of the present application are for description only and do not represent the advantages or disadvantages of the embodiments.

本申请所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。The methods disclosed in several method embodiments provided in this application can be arbitrarily combined without conflict to obtain new method embodiments.

本申请所提供的几个产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。The features disclosed in several product embodiments provided in this application can be arbitrarily combined without conflict to obtain new product embodiments.

本申请所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。The features disclosed in several method or device embodiments provided in this application can be arbitrarily combined without conflict to obtain new method embodiments or device embodiments.

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art who is familiar with the present technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.

工业实用性Industrial Applicability

本申请实施例提供了一种编解码方法、码流、编码器、解码器以及存储介质,在解码端,解码码流,确定当前点云对应的方位角采样信息;根据当前点云对应的方位角采样信息确定当前点云对应的初始预测值,并根据初始预测值确定当前点云中点的预测值。在编码端,确定当前点云对应的方位角采样信息,并将方位角采样信息写入码流;根据当前点云对应的方位角采样信息确定当前点云对应的初始预测值,并根据初始预测值确定当前点云中点的预测值。由此可见,在本申请的实施例中,在对当前点云的预测值进行初始化的过程中,可以选择通过当前点云对应的方位角采样信息来确定对应的初始预测值,能够充分考虑到当前点云的根节点的方位角的实际大小,实现更为合理的预测值的初始化处理。也就是说,在本申请的实施例中,结合方位角采样信息进行预测值的初始化,能够提高预测效果的准确性,从而提升了点云压缩性能。 The embodiment of the present application provides a coding and decoding method, a code stream, an encoder, a decoder and a storage medium. At the decoding end, the code stream is decoded to determine the azimuth sampling information corresponding to the current point cloud; the initial prediction value corresponding to the current point cloud is determined according to the azimuth sampling information corresponding to the current point cloud, and the prediction value of the midpoint of the current point cloud is determined according to the initial prediction value. At the encoding end, the azimuth sampling information corresponding to the current point cloud is determined, and the azimuth sampling information is written into the code stream; the initial prediction value corresponding to the current point cloud is determined according to the azimuth sampling information corresponding to the current point cloud, and the prediction value of the midpoint of the current point cloud is determined according to the initial prediction value. It can be seen that in the embodiment of the present application, in the process of initializing the prediction value of the current point cloud, the corresponding initial prediction value can be determined by the azimuth sampling information corresponding to the current point cloud, which can fully consider the actual size of the azimuth of the root node of the current point cloud, and realize more reasonable initialization processing of the prediction value. That is to say, in the embodiment of the present application, the initialization of the prediction value in combination with the azimuth sampling information can improve the accuracy of the prediction effect, thereby improving the point cloud compression performance.

Claims (37)

一种点云解码方法,应用于解码器,所述方法包括:解码码流,确定当前点云对应的方位角采样信息;A point cloud decoding method is applied to a decoder, the method comprising: decoding a bit stream to determine azimuth sampling information corresponding to a current point cloud; 根据所述当前点云对应的方位角采样信息确定所述当前点云对应的初始预测值,并根据所述初始预测值确定所述当前点云中点的预测值。An initial prediction value corresponding to the current point cloud is determined according to the azimuth sampling information corresponding to the current point cloud, and a prediction value of a midpoint of the current point cloud is determined according to the initial prediction value. 根据权利要求1所述的方法,其中,所述方法还包括:The method according to claim 1, wherein the method further comprises: 解码码流,确定所述当前点云对应的径向距离信息。Decode the code stream to determine radial distance information corresponding to the current point cloud. 根据权利要求2所述的方法,其中,所述方法还包括:The method according to claim 2, wherein the method further comprises: 根据所述方位角采样信息和所述径向距离信息确定所述当前点云对应的初始预测值。An initial prediction value corresponding to the current point cloud is determined according to the azimuth sampling information and the radial distance information. 根据权利要求3所述的方法,其中,所述方法还包括:The method according to claim 3, wherein the method further comprises: 根据所述方位角采样信息确定初始化参数;Determine an initialization parameter according to the azimuth sampling information; 根据所述方位角采样信息和所述初始化参数,确定所述初始预测值对应的方位角分量。The azimuth component corresponding to the initial prediction value is determined according to the azimuth sampling information and the initialization parameter. 根据权利要求1-4任一项所述的方法,其中,所述方法还包括:The method according to any one of claims 1 to 4, wherein the method further comprises: 解码码流,确定第一方位角参数;Decode the code stream and determine the first azimuth parameter; 根据所述第一方位角参数和预设数值,确定所述方位角采样信息。The azimuth sampling information is determined according to the first azimuth parameter and a preset value. 根据权利要求2所述的方法,其中,所述方法还包括:The method according to claim 2, wherein the method further comprises: 根据所述当前点云对应的径向距离信息确定所述当前点云对应的初始预测值,并根据所述初始预测值确定所述当前点云中点的预测值。An initial prediction value corresponding to the current point cloud is determined according to radial distance information corresponding to the current point cloud, and a prediction value of a midpoint of the current point cloud is determined according to the initial prediction value. 根据权利要求2-6任一项所述的方法,其中,所述方法还包括:The method according to any one of claims 2 to 6, wherein the method further comprises: 根据所述径向距离信息确定所述初始预测值对应的径向距离分量。A radial distance component corresponding to the initial prediction value is determined according to the radial distance information. 根据权利要求2所述的方法,其中,所述方法还包括:The method according to claim 2, wherein the method further comprises: 确定初始化模式标识信息;Determine initialization mode identification information; 在所述初始化模式标识信息指示所述当前点云使用第一初始化模式的情况下,执行所述方位角采样信息和所述径向距离信息的确定流程。When the initialization mode identification information indicates that the current point cloud uses the first initialization mode, a process for determining the azimuth sampling information and the radial distance information is executed. 根据权利要求8所述的方法,其中,所述方法还包括:The method according to claim 8, wherein the method further comprises: 在所述初始化模式标识信息指示所述当前点云使用第二初始化模式的情况下,执行所述径向距离信息的确定流程。When the initialization mode identification information indicates that the current point cloud uses the second initialization mode, the radial distance information determination process is executed. 根据权利要求9所述的方法,其中,所述方法还包括:The method according to claim 9, wherein the method further comprises: 在所述初始化模式标识信息的取值为第一值的情况下,确定所述初始化模式标识信息指示所述当前点云使用所述第一初始化模式;When the value of the initialization mode identification information is the first value, determining that the initialization mode identification information indicates that the current point cloud uses the first initialization mode; 在所述初始化模式标识信息的取值为第二值的情况下,确定所述初始化模式标识信息指示所述当前点云使用所述第二初始化模式。When the value of the initialization mode identification information is the second value, it is determined that the initialization mode identification information indicates that the current point cloud uses the second initialization mode. 根据权利要求8-10任一项所述的方法,其中,所述方法还包括:The method according to any one of claims 8 to 10, wherein the method further comprises: 解码码流,确定所述初始化模式标识信息。Decode the code stream to determine the initialization mode identification information. 根据权利要求10所述的方法,其中,所述方法还包括:The method according to claim 10, wherein the method further comprises: 在所述初始化模式标识信息指示所述当前点云使用第一初始化模式的情况下,根据所述方位角采样信息确定所述初始预测值的方位角分量;When the initialization mode identification information indicates that the current point cloud uses the first initialization mode, determining the azimuth component of the initial prediction value according to the azimuth sampling information; 在所述初始化模式标识信息指示所述当前点云使用第二初始化模式的情况下,将所述初始预测值的方位角分量设置为第三值。When the initialization mode identification information indicates that the current point cloud uses the second initialization mode, the azimuth component of the initial prediction value is set to a third value. 根据权利要求1或6所述的方法,其中,所述方法还包括:The method according to claim 1 or 6, wherein the method further comprises: 将所述初始预测值确定为所述当前点云对应的预测树的根节点的预测值;Determine the initial prediction value as the prediction value of the root node of the prediction tree corresponding to the current point cloud; 基于所述根节点的预测值,确定所述当前点云中的其他点的预测值。Based on the predicted value of the root node, predicted values of other points in the current point cloud are determined. 根据权利要求13所述的方法,其中,所述方法还包括:The method according to claim 13, wherein the method further comprises: 解码码流,确定所述当前点云中当前点对应的量化参数和量化后的预测残差;Decoding the bitstream to determine a quantization parameter and a quantized prediction residual corresponding to a current point in the current point cloud; 对所述量化后的预测残差进行反量化,确定所述当前点对应的预测残差;Dequantizing the quantized prediction residual to determine the prediction residual corresponding to the current point; 根据所述当前点对应的预测值和所述预测残差,确定所述当前点对应的重建值。A reconstructed value corresponding to the current point is determined according to the predicted value corresponding to the current point and the prediction residual. 根据权利要求14所述的方法,其中,所述方法还包括:The method according to claim 14, wherein the method further comprises: 解码码流,确定所述当前点对应的模式标识信息;其中,所述模式标识信息用于指示所述当前点对应的预测模式为帧间模式或帧内模式。 Decode the code stream to determine the mode identification information corresponding to the current point; wherein the mode identification information is used to indicate whether the prediction mode corresponding to the current point is an inter-frame mode or an intra-frame mode. 一种点云编码方法,应用于编码器,所述方法包括:确定当前点云对应的方位角采样信息,并将所述方位角采样信息写入码流;A point cloud encoding method, applied to an encoder, the method comprising: determining azimuth sampling information corresponding to a current point cloud, and writing the azimuth sampling information into a bit stream; 根据所述当前点云对应的方位角采样信息确定所述当前点云对应的初始预测值,并根据所述初始预测值确定所述当前点云中点的预测值。An initial prediction value corresponding to the current point cloud is determined according to the azimuth sampling information corresponding to the current point cloud, and a prediction value of a midpoint of the current point cloud is determined according to the initial prediction value. 根据权利要求16所述的方法,其中,所述方法还包括:The method according to claim 16, wherein the method further comprises: 确定所述当前点云对应的径向距离信息,并将所述当前点云对应的径向距离信息写入码流。Determine radial distance information corresponding to the current point cloud, and write the radial distance information corresponding to the current point cloud into a bitstream. 根据权利要求17所述的方法,其中,所述方法还包括:The method according to claim 17, wherein the method further comprises: 根据所述方位角采样信息和所述径向距离信息确定所述当前点云对应的初始预测值。An initial prediction value corresponding to the current point cloud is determined according to the azimuth sampling information and the radial distance information. 根据权利要求18所述的方法,其中,所述方法还包括:The method according to claim 18, wherein the method further comprises: 根据所述方位角采样信息确定初始化参数;Determine an initialization parameter according to the azimuth sampling information; 根据所述方位角采样信息和所述初始化参数,确定所述初始预测值对应的方位角分量。The azimuth component corresponding to the initial prediction value is determined according to the azimuth sampling information and the initialization parameter. 根据权利要求16所述的方法,其中,所述方法还包括:The method according to claim 16, wherein the method further comprises: 根据所述当前点云对应的径向距离信息确定所述当前点云对应的初始预测值,并根据所述初始预测值确定所述当前点云中点的预测值。An initial prediction value corresponding to the current point cloud is determined according to radial distance information corresponding to the current point cloud, and a prediction value of a midpoint of the current point cloud is determined according to the initial prediction value. 根据权利要求17-20任一项所述的方法,其中,所述方法还包括:The method according to any one of claims 17 to 20, wherein the method further comprises: 根据所述径向距离信息确定所述初始预测值对应的径向距离分量。A radial distance component corresponding to the initial prediction value is determined according to the radial distance information. 根据权利要求17所述的方法,其中,所述方法还包括:The method according to claim 17, wherein the method further comprises: 确定初始化模式标识信息;Determine initialization mode identification information; 在所述初始化模式标识信息指示所述当前点云使用第一初始化模式的情况下,执行所述方位角采样信息和所述径向距离信息的确定流程。When the initialization mode identification information indicates that the current point cloud uses the first initialization mode, a process for determining the azimuth sampling information and the radial distance information is executed. 根据权利要求22所述的方法,其中,所述方法还包括:The method according to claim 22, wherein the method further comprises: 在所述初始化模式标识信息指示所述当前点云使用第二初始化模式的情况下,执行所述径向距离信息的确定流程。When the initialization mode identification information indicates that the current point cloud uses the second initialization mode, the radial distance information determination process is executed. 根据权利要求23所述的方法,其中,所述方法还包括:The method according to claim 23, wherein the method further comprises: 在确定所述当前点云使用所述第一初始化模式的情况下,设置所述初始化模式标识信息的取值为第一值;When it is determined that the current point cloud uses the first initialization mode, setting the value of the initialization mode identification information to a first value; 在确定所述当前点云使用所述第二初始化模式的情况下,设置所述初始化模式标识信息的取值为第二值。When it is determined that the current point cloud uses the second initialization mode, the value of the initialization mode identification information is set to a second value. 根据权利要求21-24任一项所述的方法,其中,所述方法还包括:The method according to any one of claims 21 to 24, wherein the method further comprises: 将所述初始化模式标识信息写入码流。The initialization mode identification information is written into the bit stream. 根据权利要求24所述的方法,其中,所述方法还包括:The method according to claim 24, wherein the method further comprises: 在所述初始化模式标识信息指示所述当前点云使用第一初始化模式的情况下,根据所述方位角采样信息确定所述初始预测值的方位角分量;When the initialization mode identification information indicates that the current point cloud uses the first initialization mode, determining the azimuth component of the initial prediction value according to the azimuth sampling information; 在所述初始化模式标识信息指示所述当前点云使用第二初始化模式的情况下,将所述初始预测值的方位角分量设置为第三值。When the initialization mode identification information indicates that the current point cloud uses the second initialization mode, the azimuth component of the initial prediction value is set to a third value. 根据权利要求16或20所述的方法,其中,所述方法还包括:The method according to claim 16 or 20, wherein the method further comprises: 将所述初始预测值确定为所述当前点云对应的预测树的根节点的预测值;Determine the initial prediction value as the prediction value of the root node of the prediction tree corresponding to the current point cloud; 基于所述根节点的预测值,确定所述当前点云中的其他点的预测值。Based on the predicted value of the root node, predicted values of other points in the current point cloud are determined. 根据权利要求27所述的方法,其中,所述方法还包括:The method according to claim 27, wherein the method further comprises: 根据所述当前点云中当前点对应的预测值,确定所述当前点对应的预测残差;Determining a prediction residual corresponding to the current point according to a prediction value corresponding to the current point in the current point cloud; 根据所述当前点对应的量化参数对所述预测残差进行量化,确定所述当前点对应的量化后的系数残差。The prediction residual is quantized according to the quantization parameter corresponding to the current point to determine the quantized coefficient residual corresponding to the current point. 根据权利要求28所述的方法,其中,所述方法还包括:The method according to claim 28, wherein the method further comprises: 将所述当前点对应的量化参数和量化后的预测残差写入码流。The quantization parameter corresponding to the current point and the quantized prediction residual are written into the bitstream. 根据权利要求29所述的方法,其中,所述方法还包括:The method according to claim 29, wherein the method further comprises: 根据率失真算法确定所述当前点对应的模式标识信息,并将所述模式标识信息写入码流;其中,所述模式标识信息用于指示所述当前点对应的预测模式为帧间模式或帧内模式。The mode identification information corresponding to the current point is determined according to a rate-distortion algorithm, and the mode identification information is written into a bitstream; wherein the mode identification information is used to indicate whether the prediction mode corresponding to the current point is an inter-frame mode or an intra-frame mode. 根据权利要求16所述的方法,其中,所述方法还包括:The method according to claim 16, wherein the method further comprises: 根据所述方位角采样信息和预设数值确定第一方位角参数;Determine a first azimuth parameter according to the azimuth sampling information and a preset value; 将所述第一方位角参数写入码流。 The first azimuth angle parameter is written into the bitstream. 一种码流,其中,所述码流是根据待编码信息进行比特编码生成的;其中,待编码信息至少包括:初始化模式标识信息,方位角采样信息,径向距离信息,量化参数,量化后的预测残差,模式标识信息。A code stream, wherein the code stream is generated by bit encoding according to information to be encoded; wherein the information to be encoded at least includes: initialization mode identification information, azimuth sampling information, radial distance information, quantization parameter, quantized prediction residual, and mode identification information. 一种编码器,所述编码器包括:第一确定单元和编码单元;其中,An encoder, comprising: a first determining unit and an encoding unit; wherein: 所述第一确定单元,配置为确定所述当前点云对应的方位角采样信息;The first determining unit is configured to determine azimuth sampling information corresponding to the current point cloud; 所述编码单元,配置为将所述方位角采样信息写入码流;The encoding unit is configured to write the azimuth sampling information into a bit stream; 所述第一确定单元,还配置为根据所述当前点云对应的方位角采样信息确定所述当前点云对应的初始预测值,并根据所述初始预测值确定所述当前点云中点的预测值。The first determination unit is further configured to determine an initial prediction value corresponding to the current point cloud according to azimuth sampling information corresponding to the current point cloud, and determine a prediction value of a midpoint of the current point cloud according to the initial prediction value. 一种编码器,所述编码器包括第一存储器和第一处理器;其中,An encoder comprises a first memory and a first processor; wherein: 所述第一存储器,用于存储能够在所述第一处理器上运行的计算机程序;The first memory is used to store a computer program that can be run on the first processor; 所述第一处理器,用于在运行所述计算机程序时,执行如权利要求16至31中任一项所述的方法。The first processor is configured to execute the method according to any one of claims 16 to 31 when running the computer program. 一种解码器,所述解码器包括:解码单元和第二确定单元;其中,A decoder, comprising: a decoding unit and a second determining unit; wherein: 所述解码单元,配置为解码码流;The decoding unit is configured to decode the code stream; 所述第二确定单元,配置为确定所述当前点云对应的方位角采样信息;根据所述当前点云对应的方位角采样信息确定所述当前点云对应的初始预测值,并根据所述初始预测值确定所述当前点云中点的预测值。The second determination unit is configured to determine the azimuth sampling information corresponding to the current point cloud; determine the initial prediction value corresponding to the current point cloud according to the azimuth sampling information corresponding to the current point cloud, and determine the prediction value of the midpoint of the current point cloud according to the initial prediction value. 一种解码器,所述解码器包括第二存储器和第二处理器;其中,A decoder, comprising a second memory and a second processor; wherein: 所述第二存储器,用于存储能够在所述第二处理器上运行的计算机程序;The second memory is used to store a computer program that can be run on the second processor; 所述第二处理器,用于在运行所述计算机程序时,执行如权利要求1至15中任一项所述的方法。The second processor is configured to execute the method according to any one of claims 1 to 15 when running the computer program. 一种计算机可读存储介质,其中,所述计算机可读存储介质存储有计算机程序,所述计算机程序被执行时实现如权利要求1至15中任一项所述的方法、或者实现如权利要求16至31中任一项所述的方法。 A computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed, the method according to any one of claims 1 to 15 is implemented, or the method according to any one of claims 16 to 31 is implemented.
PCT/CN2023/106176 2023-07-06 2023-07-06 Encoding and decoding methods, code stream, encoder, decoder, and storage medium Pending WO2025007353A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2023/106176 WO2025007353A1 (en) 2023-07-06 2023-07-06 Encoding and decoding methods, code stream, encoder, decoder, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2023/106176 WO2025007353A1 (en) 2023-07-06 2023-07-06 Encoding and decoding methods, code stream, encoder, decoder, and storage medium

Publications (2)

Publication Number Publication Date
WO2025007353A1 WO2025007353A1 (en) 2025-01-09
WO2025007353A9 true WO2025007353A9 (en) 2025-03-20

Family

ID=94171013

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/106176 Pending WO2025007353A1 (en) 2023-07-06 2023-07-06 Encoding and decoding methods, code stream, encoder, decoder, and storage medium

Country Status (1)

Country Link
WO (1) WO2025007353A1 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114913253B (en) * 2021-02-08 2025-01-28 西安电子科技大学 A method and device for adaptive point cloud geometry encoding and decoding
CN115412717B (en) * 2021-05-26 2024-05-17 荣耀终端有限公司 A predictive coding and decoding method and device for point cloud azimuth information
CN115474058B (en) * 2021-06-11 2025-06-24 维沃移动通信有限公司 Point cloud encoding processing method, point cloud decoding processing method and related equipment
US20230102401A1 (en) * 2021-09-30 2023-03-30 Qualcomm Incorporated Inter prediction coding for geometry point cloud compression

Also Published As

Publication number Publication date
WO2025007353A1 (en) 2025-01-09

Similar Documents

Publication Publication Date Title
CN115474041B (en) Point cloud attribute prediction method, device and related equipment
CN116648915A (en) Point cloud encoding and decoding method, encoder, decoder and computer storage medium
TWI806481B (en) Method and device for selecting neighboring points in a point cloud, encoding device, decoding device and computer device
WO2022121650A1 (en) Point cloud attribute predicting method, encoder, decoder, and storage medium
CN116325732A (en) Decoding and encoding method, decoder, encoder and encoding and decoding system of point cloud
WO2025007353A9 (en) Encoding and decoding methods, code stream, encoder, decoder, and storage medium
WO2024159534A1 (en) Encoding method, decoding method, bitstream, encoder, decoder and storage medium
WO2022170511A1 (en) Point cloud decoding method, decoder, and computer storage medium
WO2023123471A1 (en) Encoding and decoding method, code stream, encoder, decoder, and storage medium
WO2022170521A1 (en) Geometry reconstruction method, decoder and computer storage medium
WO2025010541A1 (en) Encoding method, decoding method, code stream, encoder, decoder, and storage medium
US20250247550A1 (en) Method for encoding, method for decoding, and decoder
WO2024182978A1 (en) Coding method, decoding method, code stream, coder, decoder and storage medium
WO2025217849A1 (en) Encoding/decoding method, point cloud encoder, point cloud decoder, and storage medium
WO2024103304A1 (en) Point cloud encoding method, point cloud decoding method, encoder, decoder, code stream, and storage medium
WO2025039122A1 (en) Point cloud encoding method, point cloud decoding method, code stream, encoder, decoder, and storage medium
HK40073908A (en) Neighbor point in point cloud select method, apparatus and codec
HK40084295A (en) Point cloud encoding and decoding method, apparatus, device, and storage medium
WO2024212043A1 (en) Encoding method, decoding method, code stream, encoder, decoder, and storage medium
WO2024082152A1 (en) Encoding and decoding methods and apparatuses, encoder and decoder, code stream, device, and storage medium
WO2024082135A1 (en) Encoding and decoding methods, encoder, decoder, code stream, and computer storage medium
WO2025076659A1 (en) Point cloud encoding method, point cloud decoding method, code stream, encoder, decoder and storage medium
CN119301934A (en) Point cloud encoding and decoding method, codec and computer storage medium
WO2025076662A1 (en) Point cloud encoding method, point cloud decoding method, code stream, encoder, decoder, and storage medium
WO2024148491A1 (en) Encoding method, decoding method, code stream, encoder, decoder and storage medium

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: 23944080

Country of ref document: EP

Kind code of ref document: A1