[go: up one dir, main page]

WO2024207244A1 - Procédé de codage et de décodage de nuage de points, flux de code, codeur, décodeur et support de stockage - Google Patents

Procédé de codage et de décodage de nuage de points, flux de code, codeur, décodeur et support de stockage Download PDF

Info

Publication number
WO2024207244A1
WO2024207244A1 PCT/CN2023/086334 CN2023086334W WO2024207244A1 WO 2024207244 A1 WO2024207244 A1 WO 2024207244A1 CN 2023086334 W CN2023086334 W CN 2023086334W WO 2024207244 A1 WO2024207244 A1 WO 2024207244A1
Authority
WO
WIPO (PCT)
Prior art keywords
syntax element
element information
information
value
preset
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/086334
Other languages
English (en)
Chinese (zh)
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/086334 priority Critical patent/WO2024207244A1/fr
Priority to CN202380096668.8A priority patent/CN120982104A/zh
Publication of WO2024207244A1 publication Critical patent/WO2024207244A1/fr
Anticipated expiration legal-status Critical
Pending legal-status Critical Current

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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals

Definitions

  • the embodiments of the present application relate to the field of video coding and decoding technology, and in particular to a point cloud coding and decoding method, bit stream, encoder, decoder and storage medium.
  • Point clouds can flexibly and conveniently express the spatial structure and surface properties of three-dimensional objects or scenes. Point clouds are obtained by directly sampling real objects, and can provide a strong sense of reality while ensuring accuracy. Therefore, point clouds are widely used.
  • the surface of an object is collected by a collection device to form point cloud data.
  • the point cloud data includes hundreds of thousands or even more points.
  • the point cloud data is usually transmitted between the point cloud encoding device and the point cloud decoding device in the form of a point cloud media file.
  • the point cloud encoding device needs to compress the point cloud data before transmission.
  • the embodiments of the present application provide a point cloud encoding and decoding method, bit stream, encoder, decoder and storage medium, which can improve the hardware throughput of the encoder/decoder, thereby improving the encoding/decoding efficiency of point cloud data.
  • the present application provides a point cloud decoding method, which is applied to a decoder.
  • the method includes:
  • a context decoding method or a bypass decoding method is used to decode the first syntax element information to be decoded of the current color component of the current point;
  • a bypass decoding method is used to decode the second syntax element information to be decoded of the current color component of the current point; the codeword corresponding to the second syntax element information to be decoded satisfies a preset codeword condition; the first syntax element information to be decoded is the information to be decoded of the current point except the second syntax element information to be decoded.
  • the present application provides a point cloud encoding method, which is applied to an encoder.
  • the method includes:
  • a context coding method or a bypass coding method is used to encode the first syntax element information to be encoded of the current color component of the current point;
  • a bypass coding method is used to encode the second syntax element information to be encoded of the current color component of the current point; the codeword corresponding to the second syntax element information to be encoded satisfies a preset codeword condition; the first syntax element information to be encoded is the information to be encoded of the current point except the second syntax element information to be encoded.
  • the embodiment of the present application provides a code stream, wherein the code stream is generated by bit encoding according to information to be encoded, and the information to be encoded includes at least one of the following:
  • the second to fifth syntax element information corresponding to each color component as well as N, K and L, where N, K and L are positive integers greater than 1; the sign bit of the current quantized residual of the current point corresponding to each color component; the binary first syntax element information corresponding to each color component, wherein,
  • the second syntax element information is used to indicate whether the encoding/decoding value of the current quantized residual of the current color component is a first value
  • the third syntax element information is used to indicate whether the encoding/decoding value of the current quantized residual of the current color component is the second value
  • the fourth syntax element information is used to indicate the parity of the encoding/decoding value of the current quantized residual of the current color component
  • the fifth syntax element information is used to indicate whether the quotient of the encoding/decoding value of the current quantized residual of the current color component minus the third preset value and then divided by two is the first target value;
  • the first syntax element information is used to indicate the quotient of the encoding/decoding value of the current quantized residual of the current color component minus the fourth preset value and then divided by two; or, used to indicate the value of the encoding/decoding value of the current quantized residual minus the fifth preset value;
  • the first syntax element information is non-binarized syntax element information corresponding to the current quantized residual.
  • the present application provides a decoder, including:
  • the decoding part is configured to decode the first to-be-decoded syntax element information of the current color component of the current point by using a context decoding method or a bypass decoding method for the current color component;
  • a bypass decoding method is used to decode the second syntax element information to be decoded of the current color component of the current point; the codeword corresponding to the second syntax element information to be decoded satisfies a preset codeword condition; the first syntax element information to be decoded is the information to be decoded of the current point except the second syntax element information to be decoded.
  • the embodiment of the present application further provides a decoder, the decoder 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 a point cloud decoding method on a decoder side when running the computer program.
  • the present application provides an encoder, including:
  • the encoding part is configured to encode the first to-be-encoded syntax element information of the current color component of the current point by adopting a context encoding method or a bypass encoding method for the current color component;
  • a bypass coding method is used to encode the second syntax element information to be encoded of the current color component of the current point; the codeword corresponding to the second syntax element information to be encoded satisfies a preset codeword condition; the first syntax element information to be encoded is the information to be encoded of the current point except the second syntax element information to be encoded.
  • the present application also provides an encoder, the encoder comprising:
  • 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 point cloud encoding method on the encoder side when running the computer program.
  • An embodiment of the present application provides a computer storage medium, wherein the computer storage medium stores a computer program, and when the computer program is executed by a first processor, it implements a point cloud decoding method on the decoder side, or when the computer program is executed by a second processor, it implements a point cloud encoding method on the encoder side.
  • a point cloud encoding and decoding method is provided.
  • a context decoding method or a bypass decoding method is used to decode the first syntax element information to be decoded of the current color component of the current point;
  • the bypass decoding method is used to decode the second syntax element information to be decoded of the current color component of the current point;
  • the codeword corresponding to the second syntax element information to be decoded satisfies a preset codeword condition;
  • the first syntax element information to be decoded is the information to be decoded of the current point except the second syntax element information to be decoded.
  • a context encoding method or a bypass encoding method is used to encode the first syntax element information to be encoded of the current color component of the current point; the bypass encoding method is used to encode the second syntax element information to be encoded of the current color component of the current point; the codeword corresponding to the second syntax element information to be encoded satisfies a preset codeword condition; the first syntax element information to be encoded is the information to be encoded of the current point except the second syntax element information to be encoded.
  • the bypass decoding method is used to decode the second syntax element information to be decoded of the current color component of the current point.
  • the bypass decoding method has a higher throughput rate than context decoding.
  • the encoder uses the bypass coding method to encode the second syntax element information to be decoded corresponding to the binary quantized residual of the current point. Since the bypass coding method has a higher throughput rate than context coding, when the encoder is targeting the second syntax element information to be decoded, changing the coding method to the bypass coding method can improve the hardware throughput rate of the encoder, thereby improving the coding efficiency of the encoder.
  • FIG. 1a is an overall schematic diagram of an optional point cloud image provided in an embodiment of the present application.
  • FIG1b is a schematic diagram of a partial enlargement of an optional point cloud image provided in an embodiment of the present application.
  • FIG2a is a schematic diagram of six viewing angles of an optional point cloud image provided in an embodiment of the present application.
  • FIG2b is a schematic diagram of an optional data storage format of a point cloud image provided in an embodiment of the present application.
  • FIG3 is a schematic diagram of the structure of an optional point cloud coding system provided in an embodiment of the present application.
  • FIG4 is a schematic diagram of the structure of an optional point cloud encoder provided in an embodiment of the present application.
  • FIG5 is a schematic diagram of the structure of an optional point cloud decoder provided in an embodiment of the present application.
  • FIG6 is a schematic diagram of a flow chart of an optional point cloud decoding method provided in an embodiment of the present application.
  • FIG7 is a schematic diagram of a flow chart of an optional point cloud encoding method provided in an embodiment of the present application.
  • FIG8 is a first schematic diagram of the structure of an optional decoder provided in an embodiment of the present application.
  • FIG9 is a second schematic diagram of the structure of an optional decoder provided in an embodiment of the present application.
  • FIG10 is a first schematic diagram of the structure of an optional encoder provided in an embodiment of the present application.
  • FIG. 11 is a second schematic diagram of the structure of an optional encoder provided in an embodiment of the present application.
  • first ⁇ second ⁇ third involved are merely used to distinguish similar objects and do not represent a specific ordering of the objects. It can be understood that “first ⁇ second ⁇ third” can 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.
  • Point Cloud refers to a set of irregularly distributed discrete points in space that express the spatial structure and surface properties of a two-dimensional object or a three-dimensional scene.
  • FIG1a shows an overall schematic diagram of an optional point cloud image provided in an embodiment of the present application
  • FIG1b is a partial enlarged schematic diagram of an optional point cloud image provided in an embodiment of the present application. It can be seen that the surface of the three-dimensional point cloud image is composed of densely distributed points.
  • Point cloud data is a specific form of recording of point cloud.
  • Points in point cloud can include location information (also called geometric information) and attribute information of points.
  • Two-dimensional images have information expression at each pixel point, and the distribution is regular, so there is no need to record its location information additionally; however, the distribution of points in point cloud in three-dimensional space is random and irregular, so it is necessary to record the location of each point in space in order to fully express a point cloud image.
  • each point has corresponding attribute information in the acquisition process of point cloud images, usually RGB color value, and the color value reflects the color of the object; for point cloud, in addition to color information, the attribute information corresponding to each point is also more commonly reflectance value, which can reflect the surface material of the object.
  • point cloud data usually includes geometric information (x, y, z) composed of three-dimensional location information and attribute information composed of three-dimensional color information (r, g, b) and one-dimensional reflectance information (r).
  • color information can be information on any color space.
  • color information can be RGB information.
  • color information may be brightness and chromaticity (YcbCr, YUV) information.
  • Y represents brightness (Luma)
  • Cb (U) represents blue component information
  • Cr (V) represents red component information
  • U and V represent chromaticity (Chroma) for describing color difference information.
  • 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 is obtained by combining the laser measurement and photogrammetry principles, and the points in the point cloud 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.
  • FIG. 2a and FIG. 2b show a point cloud image and its corresponding data storage format, wherein FIG. 2a shows six viewing angles of a point cloud image, and FIG. 2b shows the data storage format corresponding to the point cloud image.
  • the data storage format corresponding to the point cloud image consists of a file header information part and a data part, wherein the header information part includes the data format, the data representation type, the total number of point cloud points, and the content represented by the point cloud. Taking the data storage format shown in FIG.
  • the data format of the point cloud image is the ".ply" format
  • the data representation type of the point cloud image is ASCII code representation
  • the total number of points of the point cloud image is 207242
  • each point has three-dimensional position information xyz and three-dimensional color information rgb.
  • the three-dimensional position information of one of the points in the point cloud image shown in FIG. 2b is (75, 328, 0), and the corresponding three-dimensional color information is (0, 142, 0).
  • Point clouds can flexibly and conveniently express the spatial structure and surface properties of three-dimensional objects or scenes. Point clouds are obtained by directly sampling real objects, and can provide strong realism while ensuring accuracy. Therefore, they are widely used, including virtual reality games, computer-aided design, geographic information systems, automatic navigation systems, digital cultural heritage, free viewpoint broadcasting, three-dimensional immersive remote presentation, and three-dimensional reconstruction of biological tissues and organs.
  • Point clouds can be collected mainly through the following methods: computer generation, 3D laser scanning, 3D photogrammetry, etc.
  • Computers can generate point clouds of virtual three-dimensional objects and scenes; 3D laser scanning can obtain point clouds of static real-world three-dimensional objects or scenes, and can obtain millions of point clouds per second; 3D photogrammetry can obtain point clouds of dynamic real-world three-dimensional objects or scenes, and can obtain tens of millions of point clouds per second.
  • 3D photogrammetry can obtain point clouds of dynamic real-world three-dimensional objects or scenes, and can obtain tens of millions of point clouds per second.
  • Point clouds can be divided into dense point clouds and sparse point clouds according to the way they are acquired.
  • Point clouds are divided into the following categories according to the time series type of the data: the first category is static point cloud: that is, the object is stationary and the device for acquiring the point cloud is also stationary; the second category is dynamic point cloud: the object is moving, but the device for acquiring the point cloud is stationary; the second category is dynamically acquired point cloud: the device for acquiring the point cloud is moving.
  • Point clouds are divided into two categories according to their uses: Category 1: machine-perceived point clouds, which can be used in autonomous navigation systems, real-time inspection systems, geographic information systems, visual sorting robots, emergency rescue robots and other scenarios; Category 2: human-eye-perceived point clouds, which can be used in point cloud application scenarios such as digital cultural heritage, free viewpoint broadcasting, three-dimensional immersive communication, and three-dimensional immersive interaction.
  • a point cloud video with a frame rate of 30fps frames per second
  • the number of points in each point cloud frame is 700,000
  • each point has coordinate information xyz (float, floating point type) and color information RGB (uchar, string type).
  • the 10s data volume of a 1280 720 two-dimensional video is approximately 1280 720 12bit 24frames 10s ⁇ 0.33GB
  • a point cloud encoding/decoding method which can be applied to a point cloud encoding and decoding framework to compress point cloud data.
  • Point cloud compression generally adopts a method of compressing point cloud geometry information and attribute information separately.
  • the point cloud geometry information is first encoded in the geometry encoder, and then the reconstructed geometry information is input as additional information into the attribute encoder to assist in the compression of point cloud attributes;
  • the point cloud geometry information is first decoded in the geometry decoder, and then the decoded geometry information is input as additional information into the attribute decoder to assist in the compression of point cloud attributes.
  • FIG3 is a schematic diagram of the structure of an optional point cloud coding system provided in an embodiment of the present application. It should be noted that FIG3 is only an example, and the point cloud coding and decoding system of the embodiment of the present application includes but is not limited to that shown in FIG3.
  • the point cloud coding and decoding system 100 includes an encoding device 110 and a decoding device 120.
  • the encoding device is used to encode (which can be understood as compression) the point cloud data to generate a code stream, and transmit the code stream to the decoding device.
  • the decoding device decodes the code stream generated by the encoding device to obtain decoded point cloud data.
  • the encoding device 110 of the embodiment of the present application can be understood as a device with a point cloud encoding function
  • the decoding device 120 can be understood as a device with a point cloud decoding function, that is, the embodiment of the present application includes a wider range of devices for the encoding device 110 and the decoding device 120, such as smartphones, desktop computers, mobile computing devices, notebook (e.g., laptop) computers, tablet computers, set-top boxes, televisions, cameras, display devices, digital media players, point cloud game consoles, vehicle-mounted computers, etc.
  • the encoding device 110 may transmit the encoded point cloud data (such as the geometry code stream and the attribute code stream) to the decoding device 120 via the channel 130.
  • the channel 130 may include one or more media and/or devices capable of transmitting the encoded point cloud data from the encoding device 110 to the decoding device 120.
  • the channel 130 includes one or more communication media that enable the encoding device 110 to transmit the encoded point cloud data directly to the decoding device 120 in real time.
  • the encoding device 110 can modulate the encoded point cloud data according to the communication standard and transmit the modulated point cloud data to the decoding device 120.
  • the communication medium includes a wireless communication medium, such as a radio frequency spectrum, and optionally, the communication medium may also include a wired communication medium, such as one or more physical transmission lines.
  • the channel 130 includes a storage medium, which can store the point cloud data encoded by the encoding device 110.
  • the storage medium includes a variety of locally accessible data storage media, such as optical disks, DVDs, flash memories, etc.
  • the decoding device 120 can obtain the encoded point cloud data from the storage medium.
  • the channel 130 may include a storage server that can store the point cloud data encoded by the encoding device 110.
  • the decoding device 120 can download the stored encoded point cloud data from the storage server.
  • the storage server can store the encoded point cloud data and transmit the encoded point cloud data to the decoding device 120, such as a web server (e.g., for a website), a file transfer protocol (FTP) server, etc.
  • FTP file transfer protocol
  • the encoding device 110 may transmit the encoded point cloud data (such as the geometry code stream and the attribute code stream) to the decoding device 120 via a network.
  • the network may be any number of networks that transmit the encoded point cloud data between the encoding device 110 and the decoding device 120, including, for example, wired and/or wireless communication networks.
  • the communication network may exchange data in circuit switching and/or packet switching channels. Representative networks include telecommunication networks, local area networks, wide area networks, and/or the Internet, which are not limited in this application.
  • the encoding device 110 includes a point cloud encoder 112 and an output interface 113.
  • the output interface 113 may include a modulator/demodulator (modem) and/or a transmitter.
  • the encoding device 110 may further include a point cloud source 111 in addition to the point cloud encoder 112 and the input interface 113 .
  • the point cloud source 111 may include at least one of a point cloud acquisition device (e.g., a scanner), a point cloud archive, a point cloud input interface, and a computer graphics system, wherein the point cloud input interface is used to receive point cloud data from a point cloud content provider, and the computer graphics system is used to generate point cloud data.
  • a point cloud acquisition device e.g., a scanner
  • a point cloud archive e.g., a point cloud archive
  • a point cloud input interface e.g., a point cloud input interface
  • the computer graphics system is used to generate point cloud data.
  • the point cloud encoder 112 encodes the point cloud data from the point cloud source 111 to generate a code stream.
  • the point cloud encoder 112 transmits the encoded point cloud data directly to the decoding device 120 via the output interface 113.
  • the encoded point cloud data can also be stored in a storage medium or a storage server for subsequent reading by the decoding device 120.
  • the decoding device 120 includes an input interface 121 and a point cloud decoder 122 .
  • the decoding device 120 may further include a display device 123 in addition to the input interface 121 and the point cloud decoder 122 .
  • the input interface 121 includes a receiver and/or a modem.
  • the input interface 121 can receive the encoded point cloud data through the channel 130 .
  • the point cloud decoder 122 is used to decode the encoded point cloud data to obtain decoded point cloud data, and transmit the decoded point cloud data to the display device 123.
  • the decoded point cloud data is displayed on the display device 123.
  • the display device 123 may be integrated with the decoding device 120 or may be external to the decoding device 120.
  • the display device 123 may include a variety of display devices, such as a liquid crystal display (LCD), a plasma display, an organic light emitting diode (OLED) display, or other types of display devices.
  • Figure 3 is only an example, and the technical solution of the embodiment of the present application is not limited to Figure 3.
  • the technology of the embodiment of the present application can also be applied to unilateral point cloud encoding or unilateral point cloud decoding.
  • the current point cloud encoder can use the geometry point cloud compression (G-PCC) codec framework or the video point cloud compression (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).
  • G-PCC codec framework and the AVS PCC codec framework are both for static sparse point clouds, and their encoding frameworks are roughly the same.
  • the G-PCC codec framework can be used to compress the first static point cloud and the second 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 also called the point cloud codec TMC13
  • the V-PCC codec framework is also called the point cloud codec TMC2.
  • Point cloud compression generally adopts the method of compressing point cloud geometry information and attribute information separately.
  • the point cloud geometry information is first encoded in the geometry encoder, and then the reconstructed geometry information is input into the attribute encoder as additional information to assist in the compression of point cloud attributes;
  • the point cloud geometry information is first decoded in the geometry decoder, and then the decoded geometry information is input into the attribute decoder as additional information to assist in the compression of point cloud attributes.
  • the entire codec consists of pre-processing/post-processing, geometry encoding/decoding, and attribute encoding/decoding.
  • FIG4 is a schematic diagram of the structure of an optional point cloud encoder 200 provided in an embodiment of the present application.
  • the points in the point cloud can include the geometric information of the points and the attribute information of the points. Therefore, the encoding of the points in the point cloud mainly includes geometric encoding and attribute encoding.
  • the process of geometric coding includes: preprocessing the points in the point cloud, such as coordinate transformation, quantization, and removal of duplicate points; then, geometric coding the preprocessed point cloud, such as constructing an eight-tree, and geometric coding based on the constructed eight-tree to form a geometric code stream. At the same time, based on the geometric information output by the constructed eight-tree, the geometric information of each point in the point cloud data is reconstructed to obtain the reconstructed value of the geometric information of each point.
  • the attribute encoding process includes: selecting a prediction mode for point cloud prediction by given the reconstruction information of the geometric information of the input point cloud and the original value of the attribute information, quantizing the predicted result, and performing arithmetic coding to form an attribute code stream.
  • geometric encoding can be implemented through the following units:
  • Coordinate transformation transformation (Tanmsform coordinates) unit 211, quantization (Quantize) unit 212, octree analysis (Analyze octree) unit 213, geometry reconstruction (Reconstruct geometry) unit 214 and first encoding (Enconde) unit 215.
  • the coordinate conversion unit 211 is used for coordinate translation, that is, for converting the world coordinates of the point in the point cloud into relative coordinates. Specifically, the coordinate conversion unit 211 normalizes the geometric origin to the minimum position in the point cloud space by coordinate translation, and converts the geometric information from floating point numbers to integers by coordinate quantization, so as to facilitate subsequent regularization processing. For example, the geometric coordinates of the point are respectively subtracted from the minimum value of the xyz coordinate axis, which is equivalent to a DC removal operation, so as to realize the conversion of the coordinates of the point in the point cloud from the world coordinates to the relative coordinates.
  • the quantization unit 212 is used for coordinate quantization, also known as regularization processing, that is, reducing the number of coordinates by quantization. After quantization, originally different points may be assigned the same coordinates. Based on this, duplicate points can be deleted by deduplication operation; for example, multiple clouds with the same quantization bit and different attribute information can be merged into one cloud through attribute conversion.
  • the quantization unit 212 is an optional unit module.
  • the octree analysis unit 213 is used for octree construction, that is, for encoding the geometric information of the quantized points using the octree encoding method.
  • the point cloud space is reversely divided using the octree structure, and the current sub-block is divided into eight sub-blocks of the same size each time, so that the position of the point can correspond to the position of the octree one by one, and the occupation codeword of each sub-block is judged.
  • the sub-block does not contain a point, it is recorded as empty, otherwise it is recorded as non-empty.
  • the occupation codeword information of all blocks is recorded at the last layer of the recursive division to perform geometric encoding.
  • the geometric reconstruction unit 214 may be used to perform position reconstruction based on the position information output by the octree analysis unit 213 to obtain a reconstructed value of the position information of each point in the point cloud data.
  • the first encoding unit 215 can be used to perform arithmetically encoding on the position information output by the octree analysis unit 213 by adopting an entropy encoding method, that is, to generate a geometric code stream by using an arithmetic coding method for the position information output by the octree analysis unit 213; the geometric code stream can also be called a geometry bitstream.
  • the geometric information expressed by the octree structure is input into the geometric entropy encoder to form a geometric code stream, and is geometrically reconstructed in the encoder.
  • the reconstructed geometric information is input into the attribute encoder as additional information.
  • attribute encoding can be achieved through the following units:
  • point cloud encoder 200 may include more, fewer or different functional components than those shown in FIG. 4 .
  • the color space conversion unit 221 can be used to convert the RGB color space of the point in the point cloud into a YCbCr format or other formats. If the processed attribute information is color information, the original color needs to be converted into a YUV color space that is more in line with the visual characteristics of the human eye.
  • the attribute conversion unit 222 is used for attribute recoloring, that is, for converting the attribute information of the points in the point cloud to minimize attribute distortion. Since the geometric information changes after geometric encoding, it is necessary to reassign the attribute value to each point after geometric encoding.
  • the attribute conversion unit 222 can be used to obtain the original value of the attribute information of the point (the original attribute value).
  • the attribute information can be the color information of the point.
  • the point in the point cloud is predicted.
  • the attribute prediction unit 223 can be used to predict the attribute information, wherein the point cloud needs to be reordered first, and the reordering method is Morton code (of course, it can also be other sorting methods), so the traversal order of the attribute coding is Morton order (the corresponding order can also be the order corresponding to other sorting methods).
  • the attribute prediction method can be a single point prediction based on the Morton order, that is, according to the Morton order, backtrack one point from the current point to be encoded, and the point found is the prediction reference point of the current point to be encoded, and then the attribute reconstruction value of the prediction reference point is used as the attribute prediction value.
  • the quantization coefficient unit 224 may be used to quantize the residual value of the attribute information of the point. For example, if the quantization coefficient unit 224 is connected to the attribute prediction unit 212, the quantization coefficient unit 224 may be used to quantize the residual value of the attribute information of the point output by the attribute prediction unit 223.
  • the residual value of the attribute information of the point output by the attribute prediction unit 223 is quantized using a quantization step size to improve the system performance.
  • the second encoding unit 225 may be used to perform entropy encoding on the residual value of the attribute information of the point to obtain an attribute code stream, wherein the attribute code stream may be bit stream information.
  • the original geometric information is first preprocessed, the geometric origin is normalized to the minimum position in the point cloud space through coordinate translation, and the geometric information is converted from floating point numbers to integers through coordinate quantization to facilitate subsequent regular processing; then the regularized geometric information is geometrically encoded, and the point cloud space is recursively divided and encoded using an octree structure; the geometric information expressed by the octree structure is input into the geometric entropy encoder to form a geometric code stream, and on the other hand, geometric reconstruction is performed in the encoder, and the reconstructed geometric information is input into the attribute encoder as additional information.
  • the original attribute information is first preprocessed.
  • attribute recoloring Since the geometric information changes after geometric coding, it is necessary to reallocate the attribute value for each point after geometric coding. This process is called attribute recoloring.
  • attribute information to be processed is color information
  • the original color needs to be transformed into a YUV color space that is more in line with the visual characteristics of the human eye.
  • attribute information after preprocessing is attribute encoded.
  • Attribute encoding first requires reordering the point cloud in a Morton code. Therefore, the traversal order of attribute encoding is the Morton order.
  • the attribute prediction method in PCRM is a single-point prediction based on the Morton order, that is, one point is traced back from the current point to be encoded according to the Morton order.
  • the point found is the prediction reference point of the current point to be encoded.
  • the attribute reconstruction value of the prediction reference point is used as the attribute prediction value.
  • the attribute residual is the difference between the attribute value of the current point to be encoded and the attribute prediction value.
  • the residual is quantized and the quantized residual is input into the attribute entropy encoder to form an attribute code stream.
  • FIG5 is a schematic diagram of the structure of an optional point cloud decoder 300 provided in an embodiment of the present application.
  • the decoder 300 can obtain the point cloud code stream from the encoding device, and obtain the geometric information and attribute information of the points in the point cloud by parsing the code.
  • the decoding of the point cloud includes geometric decoding and attribute decoding.
  • the process of geometric decoding includes: performing arithmetic decoding on the geometric code stream; constructing an octree and then merging it to reconstruct the geometric information of the point to obtain the reconstructed information of the geometric information of the point; performing coordinate transformation on the reconstructed information of the geometric information of the point to obtain the geometric information of the point.
  • the attribute decoding process includes: obtaining the residual value of the attribute information of the point in the point cloud by parsing the attribute code stream; obtaining the residual value of the attribute information of the point after dequantization by dequantizing the residual value of the attribute information of the point; reconstructing the information based on the position information of the point obtained in the geometric decoding process, and performing point cloud prediction to obtain the predicted value, and adding the predicted value to the residual value to obtain the reconstructed value of the attribute information of the point; performing color space deconversion on the reconstructed value of the attribute information of the point to obtain a decoded point cloud.
  • geometric decoding can be implemented by the following units:
  • attribute decoding can be achieved through the following units:
  • the decoder also adopts the method of decoding geometry and attributes separately.
  • the geometry code stream is first entropy decoded by the first decoding unit 311 to obtain the geometry information of each point cloud node, and then the octree analysis unit 312 constructs an octree structure in the same way as the geometry encoding, and combines the decoded geometry to reconstruct the geometry information expressed by the octree structure after coordinate transformation.
  • the geometry reconstruction unit 313 and the coordinate inverse conversion unit 314 are used to dequantize and detranslate the geometry information to obtain the decoded geometry information.
  • the geometry information expressed by the octree structure is input into the attribute decoder as additional information.
  • the Morton order is constructed in the same way as the encoding end, and the attribute code stream is entropy decoded by the second decoding unit 321 to obtain the quantized residual information; then the quantized residual information is dequantized by the dequantization coefficient unit 322 to obtain the point cloud residual; in the same way as the attribute encoding, the attribute prediction value of the current point to be decoded is obtained by the attribute prediction unit 323, and then the attribute prediction value is added to the residual value to restore the YUV attribute value of the current point to be decoded; finally, the color space inverse transformation is performed by the color space inverse conversion unit 324 to obtain the decoded attribute information.
  • each unit in the decoder 300 can refer to the functions of the corresponding units in the encoder 200.
  • the point cloud decoder 300 may include more, fewer or different functional components than those in FIG. 5 .
  • the encoding/decoding method of the color component and the attribute component in the point cloud is first introduced.
  • the technical routes of attribute encoding/decoding can be divided into the following two types:
  • Transformation branch that is, attribute compression adopts a transformation-based method, which includes two transformation algorithms, one is wavelet transform and the other is k-ary discrete cosine transform (DCT) transform.
  • DCT discrete cosine transform
  • the AVS PCC platform is usually used to encode/decode attribute residuals.
  • the specific implementation steps are as follows:
  • the encoding/decoding end uses the same preset order to encode/decode the quantized residual of the attribute of each point in the point cloud in turn.
  • the preset order can be the original acquisition order of the point cloud, Morton order, Hilbert order, etc., and the attribute of the point can be color, reflectivity, etc., wherein the steps of prediction, transformation, and quantized residual can be increased or decreased, and this application does not impose any restrictions on this.
  • the color attribute of a point can be in any format that represents a color component, such as RGB format, YUV format, YUV format, UVY format, etc.
  • the present application does not impose any limitation on the order of the color components.
  • the encoding end encodes the quantized residual of the color component of the encoding point, including the following steps:
  • the encoding process of the color component to be encoded (value to be encoded) of each point to be encoded includes the following steps:
  • step b) Use the "color_level_equal_zero" syntax element to indicate whether the value to be encoded is equal to 0, and encode the "color_level_equal_zero" flag. If the value to be encoded is 0, the "color_level_equal_zero” flag is 1, and the encoding of the value to be encoded is completed; if the value to be encoded is not 0, the "color_level_equal_zero” flag is 0, and step b) is executed;
  • step b) Use the "color_level_equal_one" syntax element to indicate whether the value to be encoded is equal to 1, and encode the "color_level_equal_one” flag. If the value to be encoded is 1, the "color_level_equal_one” flag is 1, and the encoding of the value to be encoded is completed; if the value to be encoded is not 1, the "color_level_equal_one” flag is 0, and step b) is executed;
  • the value to be encoded here is the absolute value of the color quantization residual or the value obtained by subtracting 1 from the absolute value of the color quantization residual.
  • the absolute value of the quantization residual of the first color component can be subtracted by 1 first, and then the quantization residual of the first color component after subtraction by 1 can be encoded; similarly, when it is determined that the quantization residual of the second color component of the point to be encoded is not 0, when encoding the quantization residual of the second color component, the absolute value of the quantization residual of the second color component can be subtracted by 1 first, and then the quantization residual of the second color component after subtraction by 1 can be encoded; when it is determined that the quantization residual of the first color component and the second color component of the point to be encoded is 0, indicating that the quantization residual of the third color component of the point to be encoded is not 0, then when encoding the quantization residual of the third color component, the absolute value of the quantization residual of the third color component can be subtracted by 1 first, and then the quant
  • the decoding end encodes the quantized residual of the color component of the encoding point, including the following steps:
  • step b) decoding the "color_first_comp_zero" flag bit, if the "color_first_comp_zero" flag bit is 1, it means that the quantization residual of the first color component of the point to be encoded is 0, and step b) is executed; if the "color_first_comp_zero" flag bit is 0, it means that the quantization residual of the first color component of the point to be encoded is not 0, and step d) is executed;
  • step c) decoding the "color_second_comp_zero" flag; if the "color_second_comp_zero" flag is 1, it indicates that the quantized residual of the second color component of the point to be encoded is 0, and the quantized residual of the third color component of the point to be encoded is decoded, and the decoding of the point to be encoded is completed; if the "color_second_comp_zero" flag is 0, it indicates that the quantized residual of the second color component of the point to be encoded is not 0, and step c) is executed;
  • the decoding process of the quantized residual (to-be-decoded value) of the color component to be decoded of each to-be-encoded point includes the following steps:
  • the Point Cloud Reference Model uses context-based encoding/decoding for all binarized codewords when encoding/decoding non-zero attribute quantization residuals. If the quantization residual of a color component of the encoded point is 10, the process of binarizing the value to be encoded is:
  • step 1) Combining step 1) to step 4), for the value to be encoded with a reflectivity quantization residual of 10, the code word result after the value to be encoded is binarized is 0000011.
  • the current PCRM platform uses context-based coding for all codewords after quantization residual binarization. Since hardware can usually process 4-6 bypass coded bits (bins) in one clock cycle, but can only process 1 context coded bit, this will bring great difficulty to hardware implementation. From the perspective of hardware throughput, if all bits are fully coded using context, the hardware throughput efficiency will be low.
  • a point cloud encoding method and a point cloud decoding method are proposed, which specifically involve the attribute prediction part, specifically the second encoding unit 225 of Figure 4, and the part corresponding to the second decoding unit 321 of Figure 5, which can improve the hardware throughput of the encoder/decoder, thereby improving the encoding/decoding efficiency.
  • the current node is mainly predicted with reference to the adjacent nodes of the current node (current point) to obtain the attribute prediction value.
  • the predicted attribute prediction value is used to calculate the residual information, and the quantized residual information is transmitted to the decoding end; after the decoding end receives and parses the bit stream, the residual information is obtained through inverse transformation and inverse quantization.
  • the decoding end predicts the attribute prediction value through the same process, and obtains the attribute reconstruction value of the current node after superposition with the residual information.
  • the present application embodiment provides a point cloud decoding method, which is applied to a decoder. As shown in FIG6 , the method may include:
  • the current point is at least one point in the point cloud currently to be decoded, and may also be a combination of multiple points, and the present application does not impose any limitation on this.
  • the decoding method provided in the embodiment of the present application is applied in the process of decoding the decoded values of the quantized residuals of each color component of the color attribute information by the decoder.
  • the decoder after receiving the code stream transmitted by the encoder, parses the code stream to obtain multiple syntax element information.
  • the multiple syntax element information can be at least one of the first syntax element information to be decoded and the second syntax element information to be decoded.
  • the color attribute information represents the color, brightness, color difference and other information of the current point.
  • the color attribute information can be information on any color space.
  • the color attribute information can be RGB information.
  • the color attribute information can be brightness and chromaticity (YcbCr, YUV) information.
  • Y represents brightness (Luma)
  • Cb (U) represents blue component information
  • Cr (V) represents red component information
  • U and V are represented as chromaticity (Chroma) for describing color difference information, or the representation of other color components, which is not limited by the embodiment of the present application.
  • the color component may include at least one of the following: a first color component, a second color component, and a third color component.
  • the first color component may be a brightness color component
  • the second color component and the third color component may be chromaticity color components, for example, the second color component is a blue chromaticity color component, and the third color component is a red chromaticity color component; or, the second color component is a red chromaticity color component, and the third color component is a blue chromaticity color component, and the present application does not make any limitation on this.
  • the first color component is the first
  • the second color component is the second
  • the third color component is the third.
  • the order of the color components is not limited. Therefore, for YUV, the first color component can be Y, the second color component can be U, and the third color component can be V.
  • UVY the first color component can be U
  • the second color component can be V
  • the third color component can be Y.
  • UYV the first color component can be U
  • the second color component can be Y
  • the third color component can be V, and so on.
  • the embodiment of the present application does not limit this.
  • the embodiment of the present application takes the current quantization parameter of a current color component as an example to illustrate the embodiment of the present application.
  • the current color component can be a brightness color component or a chromaticity color component, wherein, when the current color component is a chromaticity color component, it can be a blue chromaticity color component, a red chromaticity color component, etc., and the embodiment of the present application does not impose any limitation on this.
  • the encoding value/decoding value of the current quantization residual can be the value after the absolute value of the current quantization residual is reduced by one, and the embodiment of the present application does not impose any limitation on this.
  • the first syntax element information to be decoded obtained by the decoder through the code stream can be decoded by using the context decoding method or the bypass decoding method to determine the decoded value of the current quantized residual of the current color component.
  • the second syntax element information to be decoded that meets the preset code word condition obtained by the decoder through the code stream is parsed by using the bypass decoding method to determine the decoded value of the current quantized residual of the current color component.
  • the codeword corresponding to the second syntax element information to be decoded satisfies a preset codeword condition; the first syntax element information to be decoded is the information to be decoded at the current point except the second syntax element information to be decoded.
  • the preset codeword condition includes a first preset codeword condition or a second preset codeword condition
  • the first preset codeword condition includes: codewords other than the first N codewords after the first syntax element information is binarized; wherein N is an integer greater than or equal to 0;
  • the second preset codeword condition includes: codewords other than the first K codewords of the prefix code and/or the first L codewords of the suffix code after the first syntax element information is binarized; wherein K and L are both integers greater than or equal to 0;
  • the first syntax element information is non-binarized syntax element information corresponding to the current color component.
  • K is preset or obtained by parsing from a code stream
  • N is preset or obtained by parsing from a code stream
  • L is preset or obtained by parsing from a code stream.
  • the encoding of the current quantized residual of the current color component is encoded as a binary string. Due to different encoding methods, the combination of syntax element information parsed by the decoder during decoding is different, which is not limited in the embodiments of the present application.
  • the non-binarized grammatical element information in the grammatical element information obtained during encoding is used as the first grammatical element information, and the others are used as at least one grammatical element information. Since the first grammatical element information will be binarized during encoding and then written into the bitstream. Therefore, during the decoding process of the decoder, the first information in the first grammatical element information that meets the preset codeword condition needs to be decoded using a context decoding method or a bypass decoding method. The second information corresponding to the first grammatical element information that does not meet the preset codeword condition is decoded using a bypass decoding method.
  • the first syntax element information to be decoded includes first information in the first syntax element information that does not meet the preset codeword condition.
  • the codeword that does not meet the preset codeword condition is decoded using a context decoding method or a bypass decoding method to determine the first information corresponding to the first syntax element information, and the first syntax element information represents the value of the decoded value of the current quantized residual minus the fifth preset value.
  • the fifth preset value may be 1.
  • the second syntax element information to be decoded includes second information in the first syntax element information that satisfies a preset codeword condition; the decoder uses a bypass decoding method to decode the codeword that satisfies the preset codeword condition to determine the second information corresponding to the first syntax element information.
  • the first syntax element information may be represented as color_level_minus1.
  • the decoder can restore and determine the non-binarized first syntax element information based on the first information and the second information; and determine the decoded value of the current quantized residual based on the first syntax element information.
  • the meaning of the first syntax element information determined by the encoder may be different, and the embodiment of the present application is not limited.
  • the first syntax element information at this time can represent the value of the decoded value of the current quantized residual minus the fifth preset value. In subsequent embodiments, examples of other meanings will be given.
  • the first information and the second information are both binary codewords.
  • the decoder may also adopt a context decoding method or a bypass decoding method to decode at least one syntax element information.
  • At least one syntax element information is binary syntax element information, which is different from the first syntax element information.
  • the value of at least one syntax element information may be a first preset value or a second preset value, and the value of the first syntax element information may be greater than 1, which is not limited in the embodiment of the present application.
  • At least one syntax element information is at least one of the following:
  • the second syntax element information represents whether the decoded value of the current quantized residual of the current color component is the first value
  • the third syntax element information represents whether the decoded value of the current quantized residual of the current color component is the second value
  • the fourth syntax element information represents the parity of the decoded value of the current quantized residual of the current color component
  • the fifth syntax element information represents whether a quotient of a decoded value of a current quantized residual of a current color component subtracted from a third preset value and divided by two is a first target value.
  • the first syntax element information to be decoded includes at least one of the following: second syntax element information, third syntax element information, fourth syntax element information, fifth syntax element information, and first information in the first syntax element information that does not satisfy a preset codeword condition;
  • the second syntax element information to be decoded includes: second information in the first syntax element information that satisfies a preset codeword condition.
  • the first value may be 0 and the second value may be 1, which is not limited in the embodiment of the present application.
  • the at least one syntax element information may be a parameter written in a profile, or may be a value of a flag, which is not specifically limited here.
  • enable flag for example, taking flag as an example, there are two ways to set flag: enable flag (enable_flag) and disable flag (disable_flag).
  • the value of the enable flag is the second preset value
  • the value of the disable flag is the first preset value
  • the first preset value can be set to 0, and the second preset value can be set to 1; or, the second preset value can also be set to true (true), and the first preset value can also be set to false (false);
  • the embodiment of the present application does not make specific limitations.
  • the first syntax element information can be continued to be decoded, and the codeword that does not meet the preset codeword condition can be decoded by using a context decoding method or a bypass decoding method to determine the first information corresponding to the first syntax element information; the codeword that meets the preset codeword condition can be decoded by using a bypass decoding method to determine the second information corresponding to the first syntax element information. Finally, the decoded value of the current quantized residual is determined by using the first information and the second information.
  • the second syntax element information may be represented by color_level_equal_zero.
  • the first syntax element information may be represented by color_level_minus1.
  • the decoded value representing the current quantized residual is not equal to the first value; if the second syntax element information is a second preset value, the decoded value representing the quantized residual of the current color component is equal to the first value.
  • the first preset value when the first preset value is 0, it indicates that the decoded value of the current quantization residual is not equal to the first value; when the second preset value is 1, it indicates that the decoded value of the current quantization residual is equal to the first value.
  • the first preset value when the first preset value is false, it indicates that the decoded value of the current quantization residual is not equal to the first value; when the second preset value is true, it indicates that the decoded value of the current quantization residual is equal to the first value.
  • second syntax element information is determined; when the second syntax element information is a second preset value, the decoded value representing the current quantized residual is a first value.
  • the first preset value when the first preset value is 0, it indicates that the decoded value of the current quantized residual of the current color component is not the first value; when the second preset value is 1, it indicates that the current quantized residual of the current color component is the first value.
  • the first preset value when the first preset value is false, it indicates that the decoded value of the current quantized residual of the current color component is not the first value; when the second preset value is true, it indicates that the decoded value of the current quantized residual of the current color component is the first value.
  • the at least one syntax element information includes: when the second syntax element information and the third syntax element information are the first preset value, the third syntax element information is determined by using a context decoding method or a bypass decoding method; the third syntax element information indicates whether the decoded value of the current quantized residual is the second value;
  • the third syntax element information is a second preset value (1), it is determined that the current quantized residual is a second value.
  • the second syntax element information is the first preset value, that is, when the decoded value of the current quantized residual is not zero, it is necessary to continue decoding to determine the decoded value of the current quantized residual.
  • the decoder can continue to determine whether the decoded value of the current quantized residual is the second value.
  • the third syntax element information indicates whether the decoded value of the current quantized residual of the current color component is equal to the second value.
  • the third syntax element information may represent the flag bit of color_level_equal_one.
  • the value of the third syntax element information that is, the value of the flag bit of color_level_equal_one may be the first preset value or the second preset value.
  • the second value may be 1, which is not limited in the embodiment of the present application.
  • the decoded value of the current quantized residual is determined to be a second value (such as 1).
  • the at least one syntax element information includes: second syntax element information, third syntax element information, fourth syntax element information and fifth syntax element information.
  • the third syntax element information is the first preset value (0), fourth syntax element information and fifth syntax element information are determined;
  • the fourth syntax element information represents the parity of the decoded value of the current quantized residual;
  • the fifth syntax element information represents whether the quotient of the decoded value of the current quantized residual minus the third preset value and then divided by two is the first target value;
  • the fifth syntax element information includes: M syntax element information; wherein M is an integer greater than or equal to 0;
  • a decoded value of the current quantized residual is determined according to any syntax element information in the fourth syntax element information and the fifth syntax element information.
  • the third syntax element information is a first preset value (such as 0 or false), that is, the decoded value of the current quantized residual is neither 0 nor 1, and it is necessary to continue decoding and determine, first parse the bit stream, and determine the fourth syntax element information and the fifth syntax element information.
  • the fourth syntax element information represents the parity of the decoded value of the current quantized residual.
  • the fourth syntax element information may represent the flag bit of color_level_parity.
  • the value of the fourth syntax element information that is, the value of the flag bit of color_level_parity can be a first preset value or a second preset value. There is no limitation on how the first preset value and the second preset value express odd and even.
  • the decoded value of the current quantization residual is an even number, the remainder of the decoded value representing the current quantization residual divided by 2 is 0; if the decoded value of the current quantization residual is an odd number, the remainder of the decoded value representing the current quantization residual divided by 2 is 1.
  • the fourth syntax element information when the fourth syntax element information is the first preset value, it indicates that the decoded value of the current quantized residual is an even number; when the fourth syntax element information is the second preset value, it indicates that the decoded value of the current quantized residual is an odd number.
  • the fourth syntax element information when the fourth syntax element information is the first preset value (false), the first indicates that the decoded value of the current quantized residual is an even number; when the fourth syntax element information is the second preset value (true), it indicates that the decoded value of the current quantized residual is an odd number.
  • the fourth syntax element information when the fourth syntax element information is the first preset value, it indicates that the decoded value of the current quantized residual is an odd number; when the fourth syntax element information is the second preset value, it indicates that the decoded value of the current quantized residual is an even number.
  • the fourth syntax element information when the fourth syntax element information is the first preset value (false), the first indicates that the decoded value of the current quantized residual is an odd number; when the fourth syntax element information is the second preset value (true), it indicates that the decoded value of the current quantized residual is an even number.
  • the fifth syntax element information represents whether the quotient of the decoded value of the current quantized residual minus the third preset value and divided by two is the first target value.
  • the first preset value when the first preset value is 0 or false, it means that the quotient of the decoded value of the current quantized residual minus the third preset value divided by two is not the first target value; when the first preset value is 1 or true, it means that the quotient of the decoded value of the current quantized residual minus the third preset value divided by two is the first target value.
  • the fifth syntax element information includes: M syntax element information.
  • the third preset value is 2, 3, 4, 5, etc., and the present application does not impose any limitation on this.
  • the first target value is a natural number greater than or equal to 1, for example, the first target value is 0, 1, 2, 3, 4, etc., and the present application does not impose any limitation on this.
  • the first target value corresponds to M syntax element information in the fifth syntax element information, that is, the first target value corresponds to each syntax element information in the fifth syntax element information.
  • the third preset value is 2
  • the first target value is 0, and the corresponding syntax element information can represent whether the quotient of the decoded value of the current quantized residual minus 2 and divided by 2 is 0.
  • the syntax element information can represent the flag bit of color_level_minus2_div2_eq0.
  • the third preset value is 2
  • the first target value is 1
  • the corresponding syntax element information can represent whether the quotient of the decoded value of the current quantized residual minus 2 and divided by 2 is 1.
  • the syntax element information can represent the flag bit of color_level_minus2_div2_eq1.
  • the third preset value is 2
  • the first target value is 2
  • the corresponding syntax element information can represent whether the quotient of the decoded value of the current quantized residual minus 2 and then divided by 2 is 2.
  • the syntax element information can represent the flag bit of color_level_minus2_div2_eq2.
  • the third preset value is 2
  • the first target value is 3
  • the corresponding syntax element information can represent whether the quotient of the decoded value of the current quantized residual minus 2 and divided by 2 is 3.
  • the syntax element information can represent the flag bit of color_level_minus2_div2_eq3.
  • the third preset value is 2, and the first target value is 4.
  • the corresponding syntax element information can represent whether the quotient of the decoded value of the current quantized residual minus 2 and then divided by 2 is 4. At this time, the syntax element information can represent the flag bit of color_level_minus2_div2_eq4.
  • the number minus is the value of the third preset value.
  • the number eq is the value of the first target value.
  • the number div is the value of the divisor. The embodiment here is explained by dividing by two, that is, the divisor is 2, but the application does not limit the value of the divisor, which can be consistent with the principle of the encoder when encoding.
  • the first target value is a natural number greater than or equal to 0; the number of the first target values is M; the first target value corresponds to the M syntax element information;
  • any syntax element information in the fifth syntax element information is a second preset value
  • determining a decoded value of a current quantized residual according to any syntax element information in the fourth syntax element information and the fifth syntax element information including:
  • i-th syntax element information is a second preset value, determining a decoded value of a current quantized residual according to the fourth syntax element information and the i-th syntax element information; wherein i is a positive integer greater than or equal to 1 and less than M;
  • the i-th syntax element information is the first preset value, continue to determine the value of the i+1-th syntax element information until the j-th syntax element information is determined to be the second preset value; or until the value of the M-th syntax element information is determined; where j is a positive integer greater than i and less than or equal to M;
  • a decoded value of the current quantized residual is determined according to the fourth syntax element information and the j-th syntax element information.
  • the decoded value of the current quantized residual is expressed as (third preset value + parity + (first target value ⁇ 2)), where parity is the value of the remainder determined according to the parity of the fourth syntax element information.
  • the value of the flag bit of color_level_parity indicates that the decoded value of the current quantized residual is an even number, then the remainder of the decoded value of the current quantized residual divided by 2 is 0, that is, parity is 0; if the value of the flag bit of color_level_parity indicates that the decoded value of the current quantized residual is an odd number, then the remainder of the decoded value of the current quantized residual divided by 2 is 1, that is, parity is 1.
  • the current quantized residual is determined to be (2+parity) according to the parity indicated by the fourth syntax element information and the fifth syntax element information.
  • the decoded value of the current quantized residual may be one of the M first target values, or the decoded value of the current quantized residual is not a value among the M first target values.
  • the decoder can first determine whether the decoded value of the current quantized residual is one of the M first target values. If so, the first target value corresponding to the syntax element information with the second preset value among the M syntax element information is used as the decoded value of the current quantized residual. If the currently decoded quantized residuals are not values among the M first target values, the decoder continues to decode the first syntax element information to determine the decoded value of the current quantized residual.
  • the i-th syntax element information is any one of the M syntax element information in the fifth syntax element information, and i is executed cyclically starting from 1.
  • the decoded value of the current quantized residual is determined according to the remainder parity indicated by the fourth syntax element information and the first target value corresponding to the i-th syntax element information (third preset value + parity + (first target value corresponding to i ⁇ 2)).
  • the first target value corresponding to i is the i-th first target value.
  • the i-th syntax element information when the i-th syntax element information is a first preset value (0 or false), it indicates that the decoded value of the current quantized residual is not the first target value corresponding to i, and the value of the i+1-th syntax element information continues to be determined until the j-th syntax element information is determined to be a second preset value, or until the value of the M-th syntax element information is determined.
  • condition for the decoder to stop iterating is that a syntax element information with a second preset value is found from the M syntax element information, or the decoder fails to find syntax element information with the second preset value after searching the M syntax element information.
  • the j-th syntax element information is the syntax element information greater than i among the M syntax element information in the fifth syntax element information.
  • the decoded value of the current quantized residual is determined according to the remainder parity indicated by the fourth syntax element information and the jth first target value corresponding to the jth syntax element information (third preset value + parity + (first target value corresponding to j ⁇ 2)).
  • 2 is the value after div, which is not limited by the present application.
  • the first syntax element information when the fifth syntax element information is all the first preset value, the first syntax element information (color_level_minus4_div2) is determined; the first syntax element information represents the quotient of the decoded value of the current quantized residual minus the fourth preset value and then divided by two; wherein the fourth preset value is the initial value plus 2(M-1); the decoded value of the current quantized residual is determined based on the first syntax element information. wherein the initial value is 4.
  • the first syntax element information to be decoded includes first information in the first syntax element information that does not satisfy the preset codeword condition;
  • the second syntax element information to be decoded includes second information in the first syntax element information that satisfies the preset codeword condition; and the process of the decoder determining the first syntax element information is:
  • a context decoding method or a bypass decoding method is used to decode codewords that do not meet the preset codeword conditions, and first information corresponding to the first syntax element information is determined; a bypass decoding method is used to decode codewords that meet the preset codeword conditions, and second information corresponding to the first syntax element information is determined; based on the first information and the second information, non-binarized first syntax element information (color_level_minus4_div2) is determined.
  • the first syntax element information is determined.
  • the fourth preset value is related to the number (M) of syntax element information included in the fifth syntax element information.
  • the fourth preset value is the initial value plus 2(M-1).
  • the first syntax element information represents the quotient of the decoded value of the current quantized residual minus 4 and then divided by two, which can be represented as the flag of color_level_minus4_div2.
  • the fourth preset value is 12
  • the first syntax element information represents the quotient of the encoded value of the current quantized residual minus 12 and then divided by two, which can be represented as the flag of color_level_minus12_div2.
  • the meaning represented by the first syntax element information is different.
  • the embodiment of the present application does not limit the decoding order between at least one syntax element information, nor does it limit the decoding order between each syntax element information of at least one syntax element information and the first syntax element information.
  • Table 1 and Table 2 exemplarily describe two decoding processes.
  • bypass decoding method is used to decode the second syntax element information to be decoded of the current color component of the current point.
  • the bypass decoding method has a higher throughput than context decoding. Therefore, when the decoder is decoding the second syntax element information to be decoded, changing the decoding method to the bypass decoding method can improve the hardware throughput of the decoder, thereby improving the decoding efficiency of the decoder.
  • the decoder can determine which codeword condition to use to implement the decoding process of the first information and the second information by determining the decoding indication information.
  • the decoder determines decoding indication information; the decoding indication information is used to characterize a preset codeword condition adopted for decoding.
  • a context decoding method or a bypass decoding method is used to decode a codeword that does not meet the preset codeword condition, and a process of determining the first information corresponding to the first syntax element information is as follows:
  • the first N codewords after the first syntax element information is binarized are decoded using a context decoding method or a bypass decoding method to determine the first information corresponding to the first syntax element information;
  • the context decoding method or the bypass decoding method is adopted to decode the first K codewords of the prefix code and/or the first L codewords of the suffix code after the first syntax element information is binarized, and determine the first information corresponding to the first syntax element information.
  • a bypass decoding method is used to decode a codeword that meets a preset codeword condition, and a process of determining the second information corresponding to the first syntax element information is as follows:
  • a bypass decoding method is adopted to decode codewords other than the first N codewords after the first syntax element information is binarized, so as to determine the second information corresponding to the first syntax element information;
  • the decoding indication information indicates that the second preset codeword condition is adopted
  • the codewords after the binarization of the first syntax element information except the first K codewords of the prefix code and/or the first L codewords of the suffix code are decoded to determine the second information corresponding to the first syntax element information.
  • the codeword condition adopted by the decoder during decoding can be determined through the decoding indication information, thereby improving the efficiency and accuracy of decoding.
  • the decoder may determine the decoding indication information in different ways, as follows:
  • Method 1 parse the bit stream to obtain a decoding indication identifier, where the decoding indication identifier is decoding indication information.
  • the encoder when it determines the preset codeword condition to be used during encoding, it can be transmitted into the code stream through a flag bit, and the decoder can obtain a decoding indication mark through decoding, that is, obtain decoding indication information.
  • the decoder can parse the decoding indication through the code stream to reduce the complexity of decoding and improve the decoding efficiency.
  • Method 2 Obtain the non-binarized sixth grammatical element information of the neighboring points of the current point or the quantized residual of the neighboring points; when the sixth grammatical element information or the quantized residual of the neighboring points is greater than the first preset threshold, determine the decoding indication information as indicating the use of the first preset code word condition; when the sixth grammatical element information or the quantized residual of the neighboring points is less than or equal to the first preset threshold, determine the decoding indication information as indicating the use of the second preset code word condition.
  • the decoding indication information is determined to indicate the use of the first preset code word condition; when the quantization residual of the sixth grammatical element information or the adjacent point is greater than the first preset threshold, the decoding indication information is determined to indicate the use of the second preset code word condition.
  • the decoder may determine the decoding indication information based on the comparison of the non-binarized sixth grammatical element information of the neighboring points of the current point or the quantized residual of the neighboring points with the first preset threshold.
  • the sixth syntax element information is non-binarized syntax element information corresponding to the decoded value of the quantized residual under the current color component of the adjacent point.
  • the current non-binary first grammatical element to be encoded/decoded is encoded/decoded using the method of the first preset codeword condition, and conversely, the current non-binary first grammatical element to be encoded/decoded is encoded/decoded using the method of the first preset codeword condition.
  • the decoder can reduce the transmission of decoding indication identifiers and save transmission codewords by adopting the same judgment method as the encoder to determine the decoding indication information.
  • Method 3 Determine the binarization order corresponding to the first syntax element information of the current point
  • the decoding indication information is determined to indicate the use of the second preset codeword condition.
  • the decoding indication information is determined to indicate the use of the second preset codeword condition.
  • the decoder can determine the decoding indication information by the agreed binarization order corresponding to the first syntax element information.
  • the binarization orders corresponding to the various points may be the same, partially the same, or completely different, and the embodiment of the present application does not limit this.
  • Table 3 is the table of k-order index Columbus code in Table 28.
  • the first non-binarized first syntax element to be encoded/decoded is encoded/decoded using the method of the first preset codeword condition
  • the first non-binarized first syntax element to be encoded/decoded is encoded/decoded using the method of the second preset codeword condition.
  • the third-order exponential Columbus is used, for numbers from 0 to 7, according to the first preset codeword condition, there will be no bypass coding codeword after binarization, and according to the second preset codeword condition, there will be a bypass coding codeword.
  • the decoder can reduce the transmission of decoding indication identifiers and save transmission codewords by adopting the same judgment method as the encoder to determine the decoding indication information.
  • the present application embodiment provides a point cloud encoding method, which is applied to an encoder. As shown in FIG7 , the method may include:
  • For a current color component use a context coding method or a bypass coding method to encode first syntax element information to be encoded of the current color component of a current point.
  • S202 For the current color component, use a context coding method or a bypass coding method to encode the first syntax element information to be encoded of the current color component of the current point.
  • the current point is at least one point in the point cloud to be encoded, and may also be a combination of multiple points, and the present application does not impose any limitation on this.
  • the encoding method provided in the embodiment of the present application is applied in the process in which the encoder encodes the encoding value of each color component of the color attribute information.
  • the color attribute information represents the color, brightness, color difference and other information of the current point.
  • the color attribute information can be information on any color space.
  • the color attribute information can be RGB information.
  • the color attribute information can be brightness and chromaticity (YcbCr, YUV) information.
  • Y represents brightness (Luma)
  • Cb (U) represents blue component information
  • Cr (V) represents red component information
  • U and V are represented as chromaticity (Chroma) for describing color difference information, or other color component representations, which are not limited in the embodiment of the present application.
  • the color component may include at least one of the following: a first color component, a second color component, and a third color component.
  • the first color component may be a brightness color component
  • the second color component and the third color component may be chromaticity color components, for example, the second color component is a blue chromaticity color component, and the third color component is a red chromaticity color component; or, the second color component is a red chromaticity color component, and the third color component is a blue chromaticity color component, and the present application does not make any limitation on this.
  • the first color component is the first
  • the second color component is the second
  • the third color component is the third.
  • the order of the color components is not limited. Therefore, for YUV, the first color component can be Y, the second color component can be U, and the third color component can be V.
  • UVY the first color component can be U
  • the second color component can be V
  • the third color component can be Y.
  • UYV the first color component can be U
  • the second color component can be Y
  • the third color component can be V, and so on.
  • the embodiment of the present application does not limit this.
  • the embodiment of the present application takes a current quantization parameter of a current color component as an example to illustrate the embodiment of the present application.
  • the current color component can be a brightness color component or a chromaticity color component, wherein when the current color component is a chromaticity color component, it can be a blue chromaticity color component, a red chromaticity color component, etc., and the embodiment of the present application does not impose any limitation on this.
  • the encoded value/decoded value of the current quantized residual may be the value obtained by subtracting one from the absolute value of the current quantized residual, and the embodiment of the present application does not limit this.
  • the encoder can determine the first syntax element information to be encoded and/or the second syntax element information to be encoded based on the encoding value of the current quantized residual of the current color component, and encode it by combining the context encoding method and the bypass encoding method.
  • a current quantization residual of a current color component of a current point is determined; based on the current quantization residual, first syntax element information to be encoded and second syntax element information to be encoded are determined.
  • first syntax element information to be decoded that is, the syntax element information that does not meet the preset codeword condition
  • context coding or bypass coding can be used for encoding.
  • the second syntax element information to be encoded that meets the preset codeword condition obtained by the encoder through the bitstream is encoded using bypass coding.
  • the codeword corresponding to the second syntax element information to be decoded satisfies a preset codeword condition; the first syntax element information to be decoded is the information to be decoded at the current point except the second syntax element information to be decoded.
  • the preset codeword condition includes a first preset codeword condition or a second preset codeword condition; the first preset codeword condition includes: a codeword other than the first N codewords after the first syntax element information is binarized; wherein N is an integer greater than or equal to 0;
  • the second preset codeword condition includes: codewords other than the first K codewords of the prefix code and/or the first L codewords of the suffix code after the first syntax element information is binarized; wherein K and L are both integers greater than or equal to 0;
  • the first syntax element information is non-binarized syntax element information corresponding to the coded value of the current quantized residual of the current color component.
  • the encoding of the current quantized residual of the current color component is encoded as a binary string. Due to different encoding methods, the combination of syntax element information parsed by the decoder during decoding is different, which is not limited in the embodiments of the present application.
  • the non-binarized grammatical element information in the grammatical element information obtained during encoding is used as the first grammatical element information, and the others are used as at least one grammatical element information. Since the first grammatical element information will be binarized during encoding and then written into the bitstream. Therefore, during the encoding process of the encoder, the first information in the first grammatical element information that meets the preset codeword condition needs to be encoded using a context encoding method or a bypass encoding method. The second information corresponding to the first grammatical element information that does not meet the preset codeword condition is encoded using a bypass encoding method.
  • the encoder may determine the non-binarized first syntax element information of the current quantized residual coding value based on the current quantized residual coding value.
  • the first syntax element information to be encoded includes first information in the first syntax element information that does not meet the preset codeword condition.
  • the first information corresponding to the first syntax element information that does not meet the preset codeword condition is encoded using a context encoding method or a bypass encoding method.
  • the first syntax element information represents the value of the encoding value of the current quantized residual minus the fifth preset value.
  • the fifth preset value may be 1.
  • the second syntax element information to be encoded includes second information in the first syntax element information that meets a preset codeword condition; and a bypass encoding method is used to encode the second information corresponding to the first syntax element information that meets the preset codeword condition.
  • a context coding method or a bypass coding method is used to encode the first information (i.e., the first N codewords) that does not meet the first codeword condition, and the first syntax element information represents the value of the current quantized residual code value minus the fifth preset value.
  • a context coding method or a bypass coding method is used to encode the first information (i.e., the first K codewords of the prefix code and/or the first L codewords of the suffix code) that does not meet the second codeword condition.
  • the first syntax element information may be represented as color_level_minus1.
  • the first information and the second information are both binarized codewords of the first syntax element information.
  • the meaning of the first syntax element information determined by the encoder may be different, and the embodiment of the present application does not limit this.
  • the encoder may determine the first syntax element information, or determine at least one syntax element information and the first syntax element information based on the encoded value of the current quantized residual; and then encode the first syntax element information, or determine at least one syntax element information and the first syntax element information.
  • the encoder can directly determine the non-binary first syntax element information of the encoding value of the current quantized residual based on the encoding value of the current quantized residual, and then encode the first syntax element information and transmit it to the decoder. It is also possible to determine at least one syntax element information based on the encoding value of the current quantized residual, and then determine the first syntax element information; it is also possible to determine part of the syntax element information in at least one syntax element information based on the encoding value of the current quantized residual, and then determine the first syntax element information, and finally determine the remaining part of the syntax element information in at least one syntax element information.
  • the embodiment of the present application does not limit the determination order of the at least one syntax element information and the first syntax element information, or the encoding order.
  • the encoder determines the non-binarized first syntax element information of the encoding value of the current quantized residual based on the encoding value of the current quantized residual.
  • At least one syntax element information is binary syntax element information, which is different from the first syntax element information.
  • the value of at least one syntax element information may be a first preset value or a second preset value, and the value of the first syntax element information may be greater than 1, which is not limited in the embodiment of the present application.
  • At least one syntax element information is at least one of the following:
  • the second syntax element information represents whether the coded value of the current quantized residual of the current color component is the first value
  • the third syntax element information represents whether the coded value of the current quantized residual of the current color component is the second value
  • the fourth syntax element information represents the parity of the coded value of the current quantized residual of the current color component
  • the fifth syntax element information represents whether the quotient of the encoding value of the current quantized residual of the current color component subtracted from the third preset value and divided by two is the first target value.
  • the first syntax element information to be encoded and the second syntax element information to be encoded correspond to relevant information of the current quantized residual corresponding to the current color component.
  • the first grammatical element information to be encoded includes at least one of the following: second grammatical element information, third grammatical element information, fourth grammatical element information, fifth grammatical element information, and first information in the first grammatical element information that does not meet the preset codeword condition;
  • the second grammatical element information to be encoded includes: second information in the first grammatical element information that meets the preset codeword condition.
  • the first value may be 0 and the second value may be 1, which is not limited in the embodiment of the present application.
  • the first preset value and the second preset value are different, and the first preset value and the second preset value can be in parameter form or in digital form, which is not specifically limited here.
  • the description of at least one syntax element information is consistent with the description on the decoder side and is not repeated here.
  • At least one syntax element information of the current color component is encoded using a context encoding method or a bypass encoding method.
  • a context coding method or a bypass coding method is used to encode the first information (for example, the first N codewords) corresponding to the first grammatical element information that does not meet the preset codeword condition; and a bypass coding method is used to encode the second information corresponding to the first grammatical element information that meets the preset codeword condition.
  • the second syntax element information is determined to be the first preset value (0), and the first syntax element information is determined; the first syntax element information is the current quantized residual coding value minus the value of the fifth preset value (color_level_minus1).
  • the first syntax element information to be encoded includes at least one of the following: second syntax element information, third syntax element information, fourth syntax element information, fifth syntax element information, and first information in the first syntax element information that does not meet the preset codeword condition;
  • the second syntax element information to be encoded includes: second information in the first syntax element information that satisfies a preset codeword condition.
  • At least one syntax element information includes: second syntax element information and third syntax element information; when the encoding value of the current quantized residual is the first value (0), the second syntax element information of the current color component is determined to be the second preset value (1); the second syntax element information represents whether the encoding value of the current quantized residual is the first value; when the encoding value of the current quantized residual is the second value, the second syntax element information is determined to be the first preset value (0), and the third syntax element information is determined to be the second preset value; the third syntax element information represents whether the encoding value of the current quantized residual is the second value.
  • the at least one syntax element information includes: second syntax element information, third syntax element information, fourth syntax element information, and fifth syntax element information; the method further includes:
  • fourth syntax element information and fifth syntax element information are determined; the fourth syntax element information represents the parity of the encoding value of the current quantized residual; the fifth syntax element information represents whether the quotient of the encoding value of the current quantized residual minus the third preset value and then divided by two is the first target value; the fifth syntax element information includes: M syntax element information; wherein M is a positive integer greater than or equal to 1;
  • the first syntax element information (color_level_minus4_div2) is determined based on the encoding value of the current quantized residual; the first syntax element information represents the quotient of the encoding value of the current quantized residual minus the fourth preset value and then divided by two; wherein the fourth preset value is the initial value plus 2 (M-1). For example, the initial value is 4.
  • determining fourth syntax element information and fifth syntax element information based on the encoding value of the current quantized residual includes:
  • the j-th syntax element information is the second preset value, it is determined that the j+1-th syntax element information to the M-th syntax element information are all the first preset values.
  • the meaning represented by the first syntax element information is different.
  • the embodiment of the present application does not limit the coding order between at least one syntax element information, nor does it limit the coding order between each syntax element information of at least one syntax element information and the first syntax element information.
  • the encoder needs to write the binarized first syntax element information, and at least one of the second syntax element information, the third syntax element information, the fourth syntax element information, and the fifth syntax element information into the bitstream; write N into the bitstream; write K into the bitstream; write L into the bitstream, and write the encoding indication information into the bitstream in the form of an identifier for use by the decoder when decoding.
  • the encoder uses bypass coding to encode the second syntax element information to be decoded corresponding to the binary quantized residual of the current point. Since the bypass coding method has a higher throughput than context coding, when the encoder is encoding the second syntax element information to be decoded, changing the encoding method to the bypass coding method can improve the hardware throughput of the encoder, thereby improving the encoding efficiency of the encoder.
  • the encoder can determine which codeword condition to use to implement the encoding process of the first information and the second information by determining the encoding indication information.
  • coding indication information is determined; the coding indication information is used to characterize a preset codeword condition adopted for coding.
  • the process of encoding the first information corresponding to the first syntax element information that does not meet the preset codeword condition by using the context coding method or the bypass coding method is as follows:
  • the coding indication information indicates that, when the first preset codeword condition is adopted, the first information of the first N codewords after the first syntax element information is binarized is encoded using a context coding method or a bypass coding method;
  • a context coding method or a bypass coding method is adopted to encode the first information of the first K codewords of the prefix code and/or the first L codewords of the suffix code after the first syntax element information is binarized.
  • the bypass coding method is used to encode the second information corresponding to the first syntax element information that meets the preset codeword condition as follows:
  • the coding indication information indicates that, when the first preset codeword condition is adopted, a bypass coding method is adopted to encode the second information other than the first N codewords after the first syntax element information is binarized;
  • the encoding indication information indicates that, under the second preset codeword condition, second information other than the first K codewords of the prefix code and/or the first L codewords of the suffix code after the first syntax element information is binarized is encoded.
  • the codeword condition adopted by the encoder during encoding can be determined through the encoding indication information, and when the encoding indication information is transmitted to the decoder as an identifier, the efficiency and accuracy of decoding can be improved.
  • the encoder may determine the encoding indication information in different ways, as follows:
  • Method 1 When the first syntax element information or the quantization residual is greater than the third preset threshold, the encoding indication information is determined to indicate the use of the first preset codeword condition;
  • determining the encoding indication information to indicate the use of a second preset codeword condition In a case where the first syntax element information or the quantized residual is less than or equal to a third preset threshold, determining the encoding indication information to indicate the use of a second preset codeword condition; or,
  • the encoding indication information is determined to indicate the use of a second preset codeword condition.
  • the encoder may determine the encoding indication information based on the comparison between the non-binarized first syntax element information of the current point or the quantized residual of the current point and the first preset threshold.
  • the first syntax element information is non-binarized syntax element information corresponding to the coded value of the quantized residual under the current color component of the current point.
  • the current non-binary grammatical element to be encoded/decoded is encoded/decoded using a method with a first preset codeword condition; conversely, the current non-binary first grammatical element to be encoded/decoded is encoded/decoded using a method with a first preset codeword condition.
  • the encoder can reduce the transmission of decoding indication identifiers and save transmission codewords by adopting the same judgment method as the decoder to determine the encoding indication information.
  • Method 2 Determine the binarization order corresponding to the first syntax element information of the current point
  • the encoding indication information is determined to indicate the use of the second preset codeword condition.
  • the encoder can determine the encoding indication information by the agreed binarization order corresponding to the first syntax element information.
  • the binarization orders corresponding to the various points may be the same, partially the same, or completely different, and the embodiment of the present application does not limit this.
  • Table 3 is the table of k-order index Columbus code in Table 28.
  • the first non-binarized first syntax element to be encoded/decoded is encoded/decoded using the method of the first preset codeword condition
  • the first non-binarized first syntax element to be encoded/decoded is encoded/decoded using the method of the second preset codeword condition.
  • the third-order exponential Columbus is used, for numbers from 0 to 7, according to the first preset codeword condition, there will be no bypass coding codeword after binarization, and according to the second preset codeword condition, there will be a bypass coding codeword.
  • the encoder can reduce the transmission of decoding indication identifiers and save transmission codewords by adopting the same judgment method as the decoder to determine the encoding indication information.
  • Method three determining a binary codeword of the first syntax element information
  • the encoding indication information is determined to indicate the use of the first preset codeword condition.
  • the encoding end first obtains the binary string of the non-binary syntax element after binarization (binarized first syntax element information), and calculates the number of clock cycles required for encoding the binary string using methods including but not limited to the first preset code word condition and the second preset code word condition, and selects the mode with the least number of clock cycles corresponding to the preset code word condition to determine the encoding indication information.
  • the preset codeword condition may also include other codeword conditions in addition to the first preset codeword condition or the second preset codeword condition, and the embodiment of the present application is not limited thereto, as long as the part of the codeword corresponding to the first syntax element information is encoded using a bypass encoding method.
  • the encoder writes the encoding indication information into the bitstream in the form of an identifier.
  • the encoder judges the number of clock cycles for two preset codeword conditions and selects the codeword condition corresponding to the minimum number of clock cycles for encoding, the time complexity based on the minimum number of clock cycles is low, and therefore, the encoding efficiency can be improved during encoding.
  • the first four binarized codewords of color_level_equal_zero, color_level_equal_one, color_level_parity, color_level_minus2_div2_eq0, and color_level_minus4_div2 that may appear are coded based on context/bypass, while the codewords after the first four binarized codewords of color_level_minus4_div2 are coded based on bypass.
  • the context/bypass based decoding method is adopted for the first four binarized codewords of color_level_equal_zero, color_level_equal_one, color_level_parity, color_level_minus2_div2_eq0, and color_level_minus4_div2 that may appear, and the bypass decoding method is adopted for the codewords after the first four binarized codewords of color_level_minus4_div2.
  • the context/bypass based coding method is adopted for the first two codewords of the binarized prefix code and the first two codewords of the suffix code of color_level_equal_zero, color_level_equal_one, color_level_parity, color_level_minus2_div2_eq0, and color_level_minus4_div2 that may appear, while the bypass coding method is adopted for the first two codewords of the binarized prefix code of color_level_minus4_div2 and the codewords after the first two codewords of the suffix code.
  • the context/bypass based decoding method is adopted for the first two codewords of the binarized prefix code and the first two codewords of the suffix code of color_level_equal_zero, color_level_equal_one, color_level_parity, color_level_minus2_div2_eq0, and color_level_minus4_div2 that may appear, while the bypass decoding method is adopted for the first two codewords of the binarized prefix code of color_level_minus4_div2 and the codewords after the first two codewords of the suffix code.
  • AVS PCC AVS's latest point cloud compression platform PCRM.
  • the general test conditions of AVS PCC include the following 4 types:
  • Test condition 3 lossless geometry, limit-lossy attributes
  • the general test sequence of AVS PCC includes five categories: Cat1A, Cat1B, Cat1C, Cat2-frame and Cat3. Among them, Cat1A and Cat2-frame point clouds only contain reflectance attribute information, Cat1B and Cat3 point clouds only contain color attribute information, and Cat1C point cloud contains both color and reflectance attribute information.
  • AVS PCC There are two technical routes for AVS PCC, which are distinguished by the algorithm used for attribute compression.
  • the two technical routes are:
  • Attribute compression adopts a transformation-based method, which includes two transformation algorithms, one is wavelet transform and the other is k-ary DCT transform.
  • Table 4 and Table 5 are the test results of the scheme proposed in Example 1 in the prediction branch.
  • Table 4 is the end-to-end attribute rate distortion test results (EtE Hausdorff BD-AttrRate) of 5 general test sequences, Y, Cb and Cr represent the color components of the color attribute, refl represents the reflectivity attribute, and color represents the color attribute. It can be seen that although the scheme proposed in Example 1 has attribute rate distortion in the test results of the prediction branch, the distortion loss of the attribute rate distortion is not large, so it is within an acceptable range.
  • Table 5 is the bit rate test results (bpip ratio) of 5 general test sequences. It can be seen that the bit rate of the scheme proposed in Example 1 is equivalent in the test results of the prediction branch.
  • the scheme proposed in Example 1 has attribute rate distortion, the scheme proposed in Example 1 can effectively improve the encoding/decoding efficiency of the encoder/decoder compared to the related art, and effectively improve the throughput of the hardware. Therefore, the scheme proposed in Example 1 can provide a more friendly implementation method for hardware compared to the related art.
  • Table 6 and Table 9 are the test results of the related technology and the scheme proposed in Example 1 on the multi-layer transform branch.
  • Table 6 is the end-to-end attribute rate distortion test results of 5 general test sequences under the test conditions of limited loss in geometric position and loss in attribute. It can be seen that the loss of attribute rate distortion of the test results of the multi-layer transform branch of the scheme proposed in Example 1 under the test conditions of limited loss in geometric position and loss in attribute is within an acceptable range.
  • Table 7 is the attribute rate distortion test results of 5 general test sequences under the test conditions of lossless in geometric position and loss in attribute.
  • Table 8 is the attribute rate distortion test results of the Cat1A general test sequence under the test conditions of lossless in geometric position and limited loss in attribute. It can be seen that the loss of attribute rate distortion of the test results of the multi-layer transform branch of the scheme proposed in Example 1 under the test conditions of lossless in geometric position and limited loss in attribute is within an acceptable range.
  • Table 9 shows the bit rate test results of the Cat1A general test sequence under the test conditions of lossless geometry and lossless attributes. It can be seen that the solution proposed in Example 1 has a comparable bit rate in the test results of the prediction branch.
  • the scheme proposed in Example 1 has attribute rate distortion under the four test conditions, the loss of attribute rate distortion of the scheme proposed in Example 1 is within an acceptable range, and compared with the related technology, the scheme proposed in Example 1 can effectively improve the encoding/decoding efficiency of the encoder/decoder and effectively improve the hardware throughput.
  • Table 10-1 and Table 10-2 are the test results of the solution proposed in Example 1 under the resource-constrained prediction transformation branch.
  • Table 10-1 is the end-to-end attribute rate-distortion test results of 5 general test sequences under the test conditions of limited loss in geometric position and loss in attribute. It can be seen that the loss of attribute rate distortion of the test results of the multi-layer transformation branches of the solution proposed in Example 1 under the test conditions of limited loss in geometric position and loss in attribute is within an acceptable range.
  • Table 10-2 is the end-to-end attribute rate-distortion test results of 5 general test sequences under the test conditions of lossless geometric position and loss in attribute. It can be seen that the loss of attribute rate distortion of the test results of the multi-layer transformation branches of the solution proposed in Example 1 under the test conditions of lossless geometric position and loss in attribute is within an acceptable range.
  • the number of context-based coding codewords used in the residual coding of the color component is limited to improve the throughput and provide a more hardware-friendly implementation method.
  • a code stream is provided, wherein the code stream is generated by bit encoding according to information to be encoded, and the information to be encoded includes at least one of the following:
  • the second to fifth syntax element information corresponding to each color component as well as N, K and L, where N, K and L are integers greater than or equal to 0; the sign bit of the current quantized residual of the current point corresponding to each color component; the binary first syntax element information corresponding to each color component, wherein,
  • the second syntax element information is used to indicate whether the encoding/decoding value of the current quantized residual of the current color component is a first value
  • the third syntax element information is used to indicate whether the encoding/decoding value of the current quantized residual of the current color component is the second value
  • the fourth syntax element information is used to indicate the parity of the encoding/decoding value of the current quantized residual of the current color component
  • the fifth syntax element information is used to indicate whether the quotient of the encoding/decoding value of the current quantized residual of the current color component minus the third preset value and then divided by two is the first target value;
  • the first syntax element information is used to indicate the quotient of the encoding/decoding value of the current quantized residual of the current color component minus the fourth preset value and then divided by two; or, used to indicate the value of the encoding/decoding value of the current quantized residual minus the fifth preset value;
  • the first syntax element information is non-binarized syntax element information corresponding to the current quantized residual.
  • FIG8 shows a schematic diagram of the structure of a decoder 10 provided in an embodiment of the present application.
  • the decoder 10 may include: a first determining part 11 and a decoding part 12; wherein,
  • the decoding part 12 is configured to decode the first grammatical element information to be decoded of the current color component of the current point by using a context decoding method or a bypass decoding method for the current color component; to decode the second grammatical element information to be decoded of the current color component of the current point by using a bypass decoding method; the codeword corresponding to the second grammatical element information to be decoded satisfies a preset codeword condition; the first grammatical element information to be decoded is the information to be decoded of the current point except the second grammatical element information to be decoded.
  • the preset codeword condition includes a first preset codeword condition or a second preset codeword condition.
  • the first preset codeword condition includes: codewords other than the first N codewords after the first syntax element information is binarized; wherein N is an integer greater than or equal to 0.
  • the second preset codeword condition includes: codewords other than the first K codewords of the prefix code and/or the first L codewords of the suffix code after the first syntax element information is binarized; wherein K and L are both integers greater than or equal to 0.
  • the first syntax element information is non-binarized syntax element information corresponding to the current color component.
  • K is preset or parsed from the bitstream.
  • N is preset or parsed from the bitstream.
  • L is preset or parsed from the bitstream.
  • the first syntax element information to be decoded includes first information in the first syntax element information that does not satisfy a preset codeword condition.
  • the decoding part 12 is also configured to use a context decoding method or a bypass decoding method to decode codewords that do not meet the preset codeword conditions, and determine the first information corresponding to the first syntax element information, wherein the first syntax element information represents the decoded value of the current quantized residual minus the value of the fifth preset value.
  • the second syntax element information to be decoded includes second information in the first syntax element information that satisfies the preset codeword condition.
  • the decoding part 12 is further configured to adopt a bypass decoding method to decode the codeword that meets the preset codeword condition and determine the second information corresponding to the first syntax element information.
  • the decoding part 12 is further configured to parse the bitstream and determine at least one syntax element information of the current color component by adopting a context decoding method or a bypass decoding method.
  • the at least one syntax element information is at least one of the following: second syntax element information, third syntax element information, fourth syntax element information and fifth syntax element information.
  • the second syntax element information represents whether a decoded value of a current quantized residual of a current color component is a first value.
  • the third syntax element information represents whether a decoded value of a current quantized residual of a current color component is a second value.
  • the fourth syntax element information represents the parity of the decoded value of the current quantized residual of the current color component.
  • the fifth syntax element information represents whether a quotient of a decoded value of a current quantized residual of a current color component subtracted from a third preset value and divided by two is a first target value.
  • the decoding part 12 is further configured that when the at least one syntax element information is second syntax element information and the second syntax element information is a first preset value, a context decoding method or a bypass decoding method is used to decode codewords that do not meet the preset codeword condition to determine the first information corresponding to the first syntax element information; and a bypass decoding method is used to decode codewords that meet the preset codeword condition to determine the second information corresponding to the first syntax element information.
  • the at least one syntax element information includes: second syntax element information, the decoder further includes a first determining part 11; wherein,
  • the first determining part 11 is configured to determine second syntax element information; when the second syntax element information is a second preset value, determine the decoded value of the current quantized residual to be a first value.
  • the first determining part 11 is further configured to determine non-binarized first syntax element information based on the first information and the second information; and determine a decoded value of a current quantized residual based on the first syntax element information.
  • the at least one syntax element information includes: second syntax element information and third syntax element information.
  • the first determination part 11 is further configured to determine the third syntax element information by using a context decoding method or a bypass decoding method when the second syntax element information is a first preset value; the third syntax element information represents whether the decoded value of the current quantized residual is a second value; when the third syntax element information is a second preset value, determine that the current quantized residual is the second value.
  • the at least one syntax element information includes: second syntax element information, third syntax element information, fourth syntax element information and fifth syntax element information.
  • the first determination part 11 is further configured to determine fourth grammatical element information and fifth grammatical element information when the third grammatical element information is a first preset value; the fourth grammatical element information represents the parity of the decoded value of the current quantized residual; the fifth grammatical element information represents whether the quotient of the decoded value of the current quantized residual minus the third preset value and then divided by two is a first target value; the fifth grammatical element information includes: M grammatical element information; wherein M is an integer greater than or equal to 0; when any grammatical element information in the fifth grammatical element information is a second preset value, the decoded value of the current quantized residual is determined according to any grammatical element information in the fourth grammatical element information and the fifth grammatical element information.
  • the first determination part 11 is further configured to determine the first syntax element information when the fifth syntax element information is all the first preset value; the first syntax element information represents the quotient of the decoded value of the current quantized residual minus the fourth preset value divided by two; wherein the fourth preset value is the initial value plus 2; and the decoded value of the current quantized residual is determined based on the first syntax element information.
  • the first target value is a natural number greater than or equal to 0; the number of the first target values is M; and the first target value corresponds to the M syntax element information.
  • the first determination part 11 is further configured to determine the decoded value of the current quantized residual according to the fourth syntax element information and the i-th syntax element information when the i-th syntax element information is a second preset value; wherein i is a positive integer greater than or equal to 1 and less than M; when the i-th syntax element information is a first preset value, continue to determine the value of the i+1-th syntax element information until the j-th syntax element information is determined to be the second preset value; or until the value of the M-th syntax element information is determined; wherein j is a positive integer greater than i and less than or equal to M; when the j-th syntax element information is a second preset value, determine the decoded value of the current quantized residual according to the fourth syntax element information and the j-th syntax element information.
  • the first syntax element information to be decoded includes first information in the first syntax element information that does not satisfy the preset codeword condition; and the second syntax element information to be decoded includes second information in the first syntax element information that satisfies the preset codeword condition.
  • the decoding part 12 is further configured to use a context decoding method or a bypass decoding method to decode a codeword that does not meet the preset codeword condition to determine the first information corresponding to the first syntax element information; use a bypass decoding method to decode a codeword that meets the preset codeword condition to determine the second information corresponding to the first syntax element information;
  • the first determining part 11 is further configured to determine non-binarized first syntax element information based on the first information and the second information.
  • the first determining part 11 is further configured to determine decoding indication information; the decoding indication information is used to characterize a preset codeword condition adopted for decoding.
  • the decoding part 12 is further configured to, when the decoding indication information indicates the use of the first preset codeword condition, use the context decoding method or the bypass decoding method to decode the first N codewords after the first syntax element information is binarized, and determine the first information corresponding to the first syntax element information; when the decoding indication information indicates the use of the second preset codeword condition, use the context decoding method or the bypass decoding method to decode the first K codewords of the prefix code and/or the first L codewords of the suffix code after the first syntax element information is binarized, and determine the first information corresponding to the first syntax element information.
  • the decoding part 12 is further configured to, when the decoding indication information indicates the use of the first preset codeword condition, use a bypass decoding method to decode codewords other than the first N codewords after the first syntax element information is binarized, and determine the second information corresponding to the first syntax element information; when the decoding indication information indicates the use of the second preset codeword condition, decode the codewords other than the first K codewords of the prefix code and/or the first L codewords of the suffix code after the first syntax element information is binarized, and determine the second information corresponding to the first syntax element information.
  • the decoding part 12 is further configured to parse the code stream to obtain a decoding indication mark, where the decoding indication mark is the decoding indication information.
  • the first determination part 11 is further configured to obtain the non-binarized sixth grammatical element information of the neighboring points of the current point or the quantized residual of the neighboring points; when the sixth grammatical element information or the quantized residual of the neighboring points is greater than the first preset threshold, determine that the decoding indication information is to indicate the use of the first preset code word condition; when the sixth grammatical element information or the quantized residual of the neighboring points is less than or equal to the first preset threshold, determine that the decoding indication information is to indicate the use of the second preset code word condition; or, when the sixth grammatical element information or the quantized residual of the neighboring points is less than or equal to the first preset threshold, determine that the decoding indication information is to indicate the use of the first preset code word condition; when the sixth grammatical element information or the quantized residual of the neighboring points is greater than the first preset threshold, determine that the decoding indication information is to indicate the use of the second preset code word condition.
  • the first determination part 11 is further configured to determine the binarization order corresponding to the first syntax element information of the current point; when the order is less than a second preset threshold, determine the decoding indication information as indicating the use of the first preset codeword condition; when the order is greater than or equal to the second preset threshold, determine the decoding indication information as indicating the use of the second preset codeword condition; or, when the order is greater than or equal to the second preset threshold, determine the decoding indication information as indicating the use of the first preset codeword condition; when the order is less than the second preset threshold, determine the decoding indication information as indicating the use of the second preset codeword condition.
  • the first syntax element information to be decoded includes at least one of the following: second syntax element information, third syntax element information, fourth syntax element information, fifth syntax element information, and first information in the first syntax element information that does not meet the preset codeword condition.
  • the second syntax element information to be decoded includes: second information in the first syntax element information that meets a preset codeword condition.
  • FIG9 is a schematic diagram of the structure of an optional decoder provided in an embodiment of the present application.
  • an embodiment of the present application provides a decoder, including a first memory 13 and a first processor 14; wherein,
  • the first processor 14 is used to implement the point cloud decoding method as described above when running the computer program.
  • bypass decoding method is used to decode the second syntax element information to be decoded of the current color component of the current point.
  • the bypass decoding method has a higher throughput than context decoding. Therefore, when the decoder is decoding the second syntax element information to be decoded, changing the decoding method to the bypass decoding method can improve the hardware throughput of the decoder, thereby improving the decoding efficiency of the decoder.
  • FIG10 shows a schematic diagram of the structure of an encoder 20 provided in an embodiment of the present application.
  • the encoder 20 may include: a second determination part 21 and an encoding part 22; wherein,
  • the encoding part 22 is configured to encode the first grammatical element information to be encoded of the current color component of the current point by adopting a context encoding method or a bypass encoding method for the current color component; to encode the second grammatical element information to be encoded of the current color component of the current point by adopting a bypass encoding method; the codeword corresponding to the second grammatical element information to be encoded satisfies a preset codeword condition; the first grammatical element information to be encoded is the grammatical element information to be encoded of the current point except the second grammatical element information to be encoded.
  • the preset codeword condition includes a first preset codeword condition or a second preset codeword condition.
  • the first preset codeword condition includes: codewords other than the first N codewords after the first syntax element information is binarized; wherein N is an integer greater than or equal to 0.
  • the second preset codeword condition includes: codewords other than the first K codewords of the prefix code and/or the first L codewords of the suffix code after the first syntax element information is binarized; wherein K and L are both integers greater than or equal to 0.
  • the first syntax element information is non-binarized syntax element information corresponding to the encoding value of the current quantized residual of the current color component.
  • the first syntax element information to be encoded includes first information in the first syntax element information that does not satisfy a preset codeword condition.
  • the encoding part 22 is further configured to use a context encoding method or a bypass encoding method to encode the first information corresponding to the first syntax element information that does not meet the preset codeword condition.
  • the second syntax element information to be encoded includes second information in the first syntax element information that satisfies the preset codeword condition.
  • the encoding part 22 is further configured to adopt a bypass encoding method to encode the second information corresponding to the first syntax element information that meets the preset codeword condition.
  • the encoding part 22 is further configured to encode at least one syntax element information of the current color component by adopting a context encoding method or a bypass encoding method.
  • the at least one syntax element information is at least one of the following: second syntax element information, third syntax element information, fourth syntax element information and fifth syntax element information.
  • the second syntax element information represents whether the encoded value of the current quantized residual of the current color component is a first value.
  • the third syntax element information represents whether the encoded value of the current quantized residual of the current color component is a second value.
  • the fourth syntax element information represents the parity of the encoded value of the current quantized residual of the current color component.
  • the fifth syntax element information represents whether a quotient of a coding value of a current quantized residual of a current color component subtracted from a third preset value and divided by two is a first target value.
  • the at least one grammatical element information is second grammatical element information
  • the encoding part 22 is further configured to, when the second grammatical element information is a first preset value, use a context encoding method or a bypass encoding method to encode the first information corresponding to the first grammatical element information that does not meet the preset codeword condition; and use a bypass encoding method to encode the second information corresponding to the first grammatical element information that meets the preset codeword condition.
  • the encoder further comprises a second determining part 21; wherein,
  • the second determining part 21 is configured to determine a current quantized residual of a current color component of a current point; and determine the first syntax element information to be encoded and the second syntax element information to be encoded based on the current quantized residual.
  • the at least one syntax element information includes: second syntax element information and third syntax element information.
  • the second determination part 21 is further configured to determine that the second syntax element information of the current color component is a second preset value when the encoding value of the current quantized residual is a first value; the second syntax element information represents whether the encoding value of the current quantized residual is the first value; when the encoding value of the current quantized residual is a second value, determine that the second syntax element information is the first preset value, and determine that the third syntax element information is the second preset value; the third syntax element information represents whether the encoding value of the current quantized residual is the second value.
  • the at least one syntax element information includes: second syntax element information, third syntax element information, fourth syntax element information and fifth syntax element information.
  • the second determination part 21 is further configured to determine that the second syntax element information is a first preset value and the third syntax element information is a first preset value when the encoding value of the current quantized residual is not the second value and the first value; determine the fourth syntax element information and the fifth syntax element information based on the encoding value of the current quantized residual; the fourth syntax element information represents the parity of the encoding value of the current quantized residual; the fifth syntax element information represents whether the quotient of the encoding value of the current quantized residual minus the third preset value and then divided by two is the first target value; the fifth syntax element information includes: M syntax element information; wherein M is a positive integer greater than or equal to 1; when any syntax element information in the fifth syntax element information is the second preset value, determine that the other syntax element information in the fifth syntax element information is the first preset value.
  • the second determination part 21 is further configured to determine the first syntax element information based on the encoding value of the current quantized residual when the fifth syntax element information is all the first preset value; the first syntax element information represents the quotient of the encoding value of the current quantized residual minus the fourth preset value and then divided by two; wherein the fourth preset value is the initial value plus 2.
  • the second determination part 21 is further configured to determine the fourth syntax element information according to the remainder of the encoding value of the current quantization residual divided by 2; when the quotient of the encoding value of the current quantization residual by subtracting the third preset value and then dividing it by two is the i-th first target value, determine that the i-th syntax element information corresponding to the i-th first target value is the second preset value; wherein i is a positive integer greater than or equal to 1 and less than M; when the quotient of the encoding value of the current quantization residual by subtracting the third preset value and then dividing it by two is not the i-th first target value, determine that the i-th syntax element information corresponding to the i-th first target value is the first preset value; continue to determine the value of the i+1th syntax element information until the j-th syntax element information is determined to be the second preset value; or until the value of the M-th syntax element information is determined; wherein j is a positive integer greater
  • the second determination part 21 is also configured to determine that the second syntax element information is a first preset value, and to determine the first syntax element information; the first syntax element information is the encoding value of the current quantized residual minus the value of the fifth preset value when the encoding value of the current quantized residual is a second value.
  • the second determining part 21 is further configured to determine encoding indication information; the encoding indication information is used to characterize a preset codeword condition adopted for encoding.
  • the encoding part 22 is further configured to, when the encoding indication information indicates the use of the first preset codeword condition, use a context encoding method or a bypass encoding method to encode the first information of the first N codewords after the first syntax element information is binarized; when the encoding indication information indicates the use of the second preset codeword condition, use a context encoding method or a bypass encoding method to encode the first information of the first K codewords of the prefix code and/or the first L codewords of the suffix code after the first syntax element information is binarized.
  • the encoding part 22 is further configured to, when the encoding indication information indicates the use of the first preset codeword condition, use a bypass encoding method to encode the second information other than the first N codewords after the first syntax element information is binarized; when the encoding indication information indicates the use of the second preset codeword condition, encode the second information other than the first K codewords of the prefix code and/or the first L codewords of the suffix code after the first syntax element information is binarized.
  • the second determination part 21 is further configured to obtain the non-binarized first syntax element information or quantization residual of the current point; when the first syntax element information or the quantization residual is greater than a third preset threshold, determine the encoding indication information as indicating the use of the first preset codeword condition; when the first syntax element information or the quantization residual is less than or equal to the third preset threshold, determine the encoding indication information as indicating the use of the second preset codeword condition; or, when the first syntax element information or the quantization residual is less than or equal to the third preset threshold, determine the encoding indication information as indicating the use of the first preset codeword condition; when the first syntax element information or the quantization residual is greater than the third preset threshold, determine the encoding indication information as indicating the use of the second preset codeword condition.
  • the second determination part 21 is further configured to determine the binarization order corresponding to the first syntax element information of the current point; when the order is less than the second preset threshold, determine the coding indication information as indicating the use of the first preset code word condition; when the order is greater than or equal to the second preset threshold, determine the coding indication information as indicating the use of the second preset code word condition; or, when the order is greater than or equal to the second preset threshold, determine the coding indication information as indicating the use of the first preset code word condition; when the order is less than the second preset threshold, determine the coding indication information as indicating the use of the second preset code word condition.
  • the second determination part 21 is further configured to determine a binarized codeword of the first syntax element information; encode the first information in the binarized codeword that does not satisfy the first preset codeword condition by using a context coding method or a bypass coding method, and encode the second information that satisfies the first preset codeword condition by using a bypass coding method to determine a first number of clock cycles; encode the first information in the binarized codeword that does not satisfy the second preset codeword condition by using a context coding method or a bypass coding method, and encode the second information that satisfies the second preset codeword condition by using a bypass coding method to determine a second number of clock cycles; when the second clock cycle is less than the first clock cycle number, determine the encoding indication information as indicating the use of the second preset codeword condition; when the first clock cycle is less than the second clock cycle number, determine the encoding indication information as indicating the use of the first preset codeword condition.
  • the first syntax element information to be encoded includes at least one of the following: second syntax element information, third syntax element information, fourth syntax element information, fifth syntax element information, and first information in the first syntax element information that does not meet the preset codeword condition.
  • the second syntax element information to be encoded includes: second information in the first syntax element information that meets a preset codeword condition.
  • the encoding part 22 is further configured to write the binarized first syntax element information, and at least one of the second syntax element information, the third syntax element information, the fourth syntax element information, and the fifth syntax element information into the bitstream; write N into the bitstream; write K into the bitstream; write L into the bitstream; and write the encoding indication information into the bitstream in the form of an identifier.
  • FIG11 is a schematic diagram of the structure of an optional encoder provided in an embodiment of the present application. As shown in FIG11 , an encoder is provided in an embodiment of the present application, including a second memory 23 and a second processor 24; wherein,
  • the second processor 24 is used to implement the above-mentioned point cloud encoding method when running the computer program.
  • the encoder uses bypass coding to encode the second syntax element information to be decoded corresponding to the binary quantized residual of the current point. Since the bypass coding has a higher throughput than context coding, when the encoder is encoding the second syntax element information to be decoded, changing the coding method to the bypass coding method can improve the hardware throughput of the encoder, thereby improving the coding efficiency of the encoder.
  • each functional unit in each embodiment of the present application can be integrated into a processing unit, or it can exist physically alone, or two or more units can be integrated into one unit.
  • the above-mentioned integrated unit can be implemented in the form of hardware or in the form of a software functional unit. It can also be implemented in the form of a combination of software and hardware.
  • the embodiment of the present application if the above method is implemented in the form of a software function module and sold or used as an independent product, it can also be stored in a computer-readable storage medium. Based on such an understanding, the technical solution of the embodiment of the present application can be essentially or partly embodied in the form of a software product that contributes to the relevant technology.
  • the computer software product is stored in a storage medium, including several instructions to enable an electronic device to execute all or part of the methods described in each embodiment of the present application.
  • the aforementioned storage medium includes: various media that can store program codes, such as a U disk, a mobile hard disk, a read-only memory (ROM), a disk or an optical disk. In this way, the embodiment of the present application is not limited to any specific combination of hardware and software.
  • the memory 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 SDRAM
  • ESDRAM Enhanced SDRAM
  • SLDRAM Synchlink DRAM
  • DRRAM Direct Rambus RAM
  • the processor may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by an integrated logic circuit of hardware in the processor or an instruction in the form of software.
  • the above processor may 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 may be a microprocessor or the processor may also be any conventional processor, etc.
  • the steps of the method disclosed in the embodiments of the present application can be directly embodied as being executed by a hardware decoding processor, or executed by a combination of hardware and software modules in a decoding processor.
  • the software module may 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 a memory, and the processor reads the information in the memory 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.
  • An embodiment of the present application provides a computer storage medium, which stores a computer program.
  • the computer program When the computer program is executed by a first processor, it implements the point cloud decoding method described above, or when the computer program is executed by a second processor, it implements the point cloud encoding method described above.
  • An embodiment of the present application provides a computer program product including instructions, which, when executed on a computer, enables the computer to execute the steps in the point cloud encoding/decoding method provided in the above method embodiment.
  • the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of hardware embodiments, software embodiments, or embodiments in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage and optical storage, etc.) that contain computer-usable program code.
  • a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage and optical storage, etc.) that contain computer-usable program code.
  • object A and/or object B can mean: object A exists alone, object A and object B exist at the same time, and object B exists alone.
  • modules described above as separate components may or may not be physically separated, and the components displayed as modules may or may not be physical modules; they may be located in one place or distributed on multiple network units; some or all of the modules may be selected according to actual needs to achieve the purpose of the present embodiment.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

Sont divulgués un procédé de codage et de décodage de nuage de points, un flux de code, un codeur, un décodeur et un support de stockage. Le procédé consiste à : pour une composante de couleur courante, décoder des premières informations d'élément de syntaxe à décoder de la composante de couleur courante d'un point courant en adoptant un mode de décodage de contexte ou un mode de dérivation de décodage ; et décoder des deuxièmes informations d'élément de syntaxe à décoder de la composante de couleur courante du point courant en adoptant le mode de dérivation de décodage. Un mot de code correspondant aux deuxièmes informations d'élément de syntaxe à décoder remplit une condition de mot de code prédéfinie et les premières informations d'élément de syntaxe à décoder sont des informations à décoder du point courant, à l'exclusion des deuxièmes informations d'élément de syntaxe à décoder.
PCT/CN2023/086334 2023-04-04 2023-04-04 Procédé de codage et de décodage de nuage de points, flux de code, codeur, décodeur et support de stockage Pending WO2024207244A1 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/CN2023/086334 WO2024207244A1 (fr) 2023-04-04 2023-04-04 Procédé de codage et de décodage de nuage de points, flux de code, codeur, décodeur et support de stockage
CN202380096668.8A CN120982104A (zh) 2023-04-04 2023-04-04 点云的编解码方法、码流、编码器、解码器以及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2023/086334 WO2024207244A1 (fr) 2023-04-04 2023-04-04 Procédé de codage et de décodage de nuage de points, flux de code, codeur, décodeur et support de stockage

Publications (1)

Publication Number Publication Date
WO2024207244A1 true WO2024207244A1 (fr) 2024-10-10

Family

ID=92970746

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/086334 Pending WO2024207244A1 (fr) 2023-04-04 2023-04-04 Procédé de codage et de décodage de nuage de points, flux de code, codeur, décodeur et support de stockage

Country Status (2)

Country Link
CN (1) CN120982104A (fr)
WO (1) WO2024207244A1 (fr)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107211138A (zh) * 2015-01-30 2017-09-26 高通股份有限公司 用于高吞吐量cabac译码的调色板索引分组
CN113840150A (zh) * 2021-09-17 2021-12-24 中山大学 一种点云反射率属性熵编码方法
WO2022015006A1 (fr) * 2020-07-13 2022-01-20 엘지전자 주식회사 Dispositif de transmission de données de nuage de points, procédé de transmission de données de nuage de points, dispositif de réception de données de nuage de points et procédé de réception de données de nuage de points
US20220108484A1 (en) * 2020-10-07 2022-04-07 Qualcomm Incorporated Predictive geometry coding in g-pcc
CN114616592A (zh) * 2019-10-31 2022-06-10 黑莓有限公司 用于云压缩的方位角先验和树表示的方法和系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107211138A (zh) * 2015-01-30 2017-09-26 高通股份有限公司 用于高吞吐量cabac译码的调色板索引分组
CN114616592A (zh) * 2019-10-31 2022-06-10 黑莓有限公司 用于云压缩的方位角先验和树表示的方法和系统
WO2022015006A1 (fr) * 2020-07-13 2022-01-20 엘지전자 주식회사 Dispositif de transmission de données de nuage de points, procédé de transmission de données de nuage de points, dispositif de réception de données de nuage de points et procédé de réception de données de nuage de points
US20220108484A1 (en) * 2020-10-07 2022-04-07 Qualcomm Incorporated Predictive geometry coding in g-pcc
CN113840150A (zh) * 2021-09-17 2021-12-24 中山大学 一种点云反射率属性熵编码方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
A.M. TOURAPIS (APPLE), Y. SU (APPLE), K. MAMMOU (APPLE), J. KIM (APPLE), D. SINGER (APPLE), F. ROBINET (APPLE INC): "Multi-component video coding: an extension for truly versatile video/image compression", 12. JVET MEETING; 20181003 - 20181012; MACAO; (THE JOINT VIDEO EXPLORATION TEAM OF ISO/IEC JTC1/SC29/WG11 AND ITU-T SG.16 ), 29 September 2018 (2018-09-29), XP030194052 *

Also Published As

Publication number Publication date
CN120982104A (zh) 2025-11-18

Similar Documents

Publication Publication Date Title
US20240087174A1 (en) Coding and decoding point cloud attribute information
CN115474041B (zh) 点云属性的预测方法、装置及相关设备
CN116636214A (zh) 点云编解码方法与系统、及点云编码器与点云解码器
WO2024221458A1 (fr) Procédé et appareil de codage et de décodage de nuage de points, dispositif et support de stockage
CN118075464A (zh) 点云属性的预测方法、装置及编解码器
TW202425653A (zh) 點雲編解碼方法、裝置、設備及儲存媒介
WO2024174086A1 (fr) Procédé de décodage, procédé de codage, décodeurs et codeurs
WO2024207244A1 (fr) Procédé de codage et de décodage de nuage de points, flux de code, codeur, décodeur et support de stockage
WO2024207247A1 (fr) Procédé de codage de nuage de points, procédé de décodage de nuage de points, flux de code, codeur, décodeur et support d'enregistrement
CN119366190A (zh) 点云编解码方法、装置、设备及存储介质
WO2024187388A1 (fr) Procédé de codage de nuage de points, procédé de décodage de nuage de points, et flux de code, codeur, décodeur et support de stockage
WO2024119419A1 (fr) Procédé de codage, procédé de décodage, flux binaire, codeur, décodeur et support de stockage
WO2024187380A1 (fr) Procédé de codage, procédé de décodage, flux de code, codeur, décodeur et support de stockage
WO2024119420A1 (fr) Procédé de codage, procédé de décodage, flux de code, codeur, décodeur, et support de stockage
WO2024207235A1 (fr) Procédé de codage/décodage, train de bits, codeur, décodeur et support de stockage
WO2025039236A1 (fr) Procédé de codage et décodage, train de codes, codeur, décodeur et support de stockage
WO2025010590A1 (fr) Procédé de décodage, procédé de codage, décodeur et codeur
WO2024065272A1 (fr) Procédé et appareil de codage de nuage de points, procédé et appareil de décodage de nuage de points, dispositif, et support de stockage
CN117426093A (zh) 点云编解码方法、装置、点云编解码器及存储介质
WO2024065271A1 (fr) Procédé et appareil de codage/décodage de nuage de points, et dispositif et support d'enregistrement
HK40084295A (en) Point cloud encoding and decoding method, apparatus, device, and storage medium
WO2024103304A1 (fr) Procédé d'encodage de nuage de points, procédé de décodage de nuage de points, encodeur, décodeur, flux de code, et support de stockage
HK40088799A (zh) 点云属性的编解码方法、装置、设备及存储介质
WO2024174092A1 (fr) Procédé de codage/décodage, flux de code, codeur, décodeur et support d'enregistrement
WO2025039122A1 (fr) Procédé de codage de nuage de points, procédé de décodage de nuage de points, flux de code, codeur, décodeur et support de stockage

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE