WO2022257978A1 - 点云编码方法、解码方法及装置 - Google Patents

点云编码方法、解码方法及装置 Download PDF

Info

Publication number
WO2022257978A1
WO2022257978A1 PCT/CN2022/097660 CN2022097660W WO2022257978A1 WO 2022257978 A1 WO2022257978 A1 WO 2022257978A1 CN 2022097660 W CN2022097660 W CN 2022097660W WO 2022257978 A1 WO2022257978 A1 WO 2022257978A1
Authority
WO
WIPO (PCT)
Prior art keywords
point cloud
information
node
target
decoded
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.)
Ceased
Application number
PCT/CN2022/097660
Other languages
English (en)
French (fr)
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.)
Vivo Mobile Communication Co Ltd
Original Assignee
Vivo Mobile Communication Co 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 Vivo Mobile Communication Co Ltd filed Critical Vivo Mobile Communication Co Ltd
Publication of WO2022257978A1 publication Critical patent/WO2022257978A1/zh
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/40Tree coding, e.g. quadtree, octree
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • 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
    • H04N19/96Tree coding, e.g. quad-tree coding

Definitions

  • the present application belongs to the technical field of point cloud processing, and in particular relates to a point cloud encoding method, decoding method and device.
  • AVS Audio Video coding Standard
  • PCM Point Cloud Reference Software Model
  • neighbor nodes need to be stored when performing geometric codec based on multi-tree
  • the occupancy information of the current node to be encoded is used to predictively encode the occupancy information of the current node to be encoded. Since the number of leaf nodes will increase exponentially in the octree layer close to the leaf nodes in the geometric encoding and decoding method based on the multi-fork tree, the existing predictive coding method will cause a large memory overhead and the complexity of neighbor node search It will also be very high, resulting in low coding efficiency.
  • the embodiment of the present application provides a point cloud encoding method, decoding method and device, which can solve the problem that the existing predictive encoding method will cause a large memory overhead, and the complexity of neighbor search will be high, resulting in low encoding efficiency.
  • a point cloud encoding method including:
  • the first point cloud information prediction list includes point cloud information of encoded nodes in the target point cloud
  • a point cloud decoding method including:
  • the decoding information includes the prediction residual of the node to be decoded and the prediction mode of the node to be decoded, or the decoding information includes the node to be decoded
  • the prediction residual of the decoding node, the target code stream is obtained after encoding the nodes in the target point cloud;
  • the second point cloud information prediction list includes point cloud information of decoded nodes in the target code stream
  • a point cloud encoding device including:
  • a first determining module configured to determine a first point cloud information prediction list, the first point cloud information prediction list including point cloud information of encoded nodes in the target point cloud;
  • the first processing module is configured to perform predictive encoding on the nodes to be encoded in the target point cloud according to the first point cloud information prediction list.
  • a point cloud decoding device including:
  • the second processing module is configured to perform decoding processing on the target code stream to obtain decoding information of the node to be decoded in the target code stream, the decoding information including the prediction residual of the node to be decoded and the prediction mode of the node to be decoded, or , the decoding information includes the prediction residual of the node to be decoded, and the target code stream is obtained after encoding the nodes in the target point cloud;
  • the second determining module is configured to determine a second point cloud information prediction list, the second point cloud information prediction list including point cloud information of decoded nodes in the target code stream;
  • the first obtaining module is configured to obtain point cloud information corresponding to the node to be decoded according to the second point cloud information prediction list and the decoding information.
  • a point cloud encoding device including a processor, a memory, and a program or instruction stored on the memory and operable on the processor, and the program or instruction is executed by the processor When realizing the steps of the method as described in the first aspect.
  • a point cloud encoding device including a processor and a communication interface, wherein the processor is used to determine a first point cloud information prediction list, and the first point cloud information prediction list includes the points in the target point cloud.
  • the point cloud information of the coded node according to the first point cloud information prediction list, perform predictive coding on the nodes to be coded in the target point cloud.
  • a point cloud decoding device including a processor, a memory, and a program or instruction stored on the memory and operable on the processor, and the program or instruction is executed by the processor When realizing the steps of the method as described in the second aspect.
  • a point cloud decoding device including a processor and a communication interface, wherein the processor is used to decode the target code stream to obtain decoding information of nodes to be decoded in the target code stream, so
  • the decoding information includes the prediction residual of the node to be decoded and the prediction mode of the node to be decoded, or the decoding information includes the prediction residual of the node to be decoded, and the target code stream is to encode the node in the target point cloud Obtained afterwards; determine the second point cloud information prediction list, the second point cloud information prediction list includes the point cloud information of the decoded node in the target code stream; according to the second point cloud information prediction list and the decoding information , to obtain the point cloud information corresponding to the node to be decoded.
  • a readable storage medium is provided, and programs or instructions are stored on the readable storage medium, and when the programs or instructions are executed by a processor, the steps of the method described in the first aspect are realized, or the steps of the method described in the first aspect are realized, or The steps of the method described in the second aspect.
  • a chip in a tenth aspect, includes a processor and a communication interface, the communication interface is coupled to the processor, and the processor is used to run programs or instructions to implement the method as described in the first aspect , or implement the method described in the second aspect.
  • a computer program/program product is provided, the computer program/program product is stored in a non-transitory storage medium, and the program/program product is executed by at least one processor to implement the first A step of the method described in the aspect or the second aspect.
  • the first point cloud information prediction list is determined, the first point cloud information prediction list includes the point cloud information of the encoded nodes in the target point cloud, and based on the first point cloud information prediction list, the The to-be-encoded nodes in the target point cloud perform predictive encoding.
  • This encoding method uses the point cloud information of the encoded node in the first point cloud information prediction list to predict and encode the node to be encoded, without the need to find the occupancy information of the neighbor node, which reduces the search complexity of the neighbor node, and does not need to save A large number of occupancy information of neighbor nodes effectively reduces memory overhead and improves coding efficiency.
  • Figure 1 is a schematic diagram of the G-PCC encoding and decoding framework
  • Fig. 2 is one of schematic flow charts of the point cloud coding method of the embodiment of the present application.
  • Fig. 3 is the second schematic flow diagram of the point cloud encoding method of the embodiment of the present application.
  • Fig. 4 is the third schematic flow diagram of the point cloud encoding method of the embodiment of the present application.
  • Fig. 5 is the fourth schematic flow diagram of the point cloud encoding method of the embodiment of the present application.
  • Fig. 6 is one of the update schematic diagrams of the point cloud information prediction list in the embodiment of the present application.
  • Fig. 7 is the second schematic diagram of updating the point cloud information prediction list in the embodiment of the present application.
  • Fig. 8 is a schematic diagram of updating the second attribute information prediction list in the embodiment of the present application.
  • FIG. 9 is a schematic flow diagram of a point cloud decoding method according to an embodiment of the present application.
  • Fig. 10 shows a schematic diagram of modules of a point cloud encoding device according to an embodiment of the present application
  • Fig. 11 shows one of the structural block diagrams of the point cloud encoding device of the embodiment of the present application.
  • Fig. 12 shows the second structural block diagram of the point cloud encoding device of the embodiment of the present application.
  • FIG. 13 shows a schematic diagram of modules of a point cloud decoding device according to an embodiment of the present application.
  • first, second and the like in the specification and claims of the present application are used to distinguish similar objects, and are not used to describe a specific sequence or sequence. It is to be understood that the terms so used are interchangeable under appropriate circumstances such that the embodiments of the application are capable of operation in sequences other than those illustrated or described herein and that "first" and “second” distinguish objects. Generally, it is one class, and the number of objects is not limited, for example, there may be one or more first objects.
  • “and/or” in the description and claims means at least one of the connected objects, and the character “/” generally means that the related objects are an "or” relationship.
  • Both the encoder corresponding to the point cloud encoding method and the decoder corresponding to the point cloud decoding method in the embodiment of the present application can be a terminal, the terminal can also be called a terminal device or user equipment (User Equipment, UE), and the terminal can be a mobile phone , Tablet Personal Computer, Laptop Computer or Notebook Computer, Personal Digital Assistant (PDA), PDA, Netbook, Ultra-Mobile Personal Computer, UMPC), mobile Internet device (Mobile Internet Device, MID), augmented reality (Augmented Reality, AR) / virtual reality (Virtual Reality, VR) equipment, robot, wearable device (Wearable Device) or vehicle equipment (VUE), Terminal-side devices such as Pedestrian Terminals (PUE), and wearable devices include: smart watches, bracelets, earphones, glasses, etc. It should be noted that, the embodiment of the present application does not limit the specific type of the terminal.
  • G-PCC Point Cloud Coding
  • Geometric encoding based on octree includes: first, coordinate transformation is performed on geometric information, so that all point clouds are contained in a bounding box. Then quantize. This step of quantization mainly plays the role of scaling. Due to the rounding of quantization, the geometric information of some points is the same. It is determined whether to remove duplicate points according to the parameters. The process of quantizing and removing duplicate points is also called for the voxelization process. Next, the bounding box is continuously divided into trees (octree/quadtree/binary tree) in the order of breadth-first traversal, and the placeholder code of each node is encoded.
  • trees octree/quadtree/binary tree
  • the bounding box is divided in turn to obtain sub-cubes, and the sub-cubes that are not empty (including points in the point cloud) continue to be divided until the leaf nodes obtained by division are 1 ⁇ 1 ⁇ 1 unit cube, stop dividing, and then encode the points contained in the leaf nodes, and finally complete the encoding of the geometric octree to generate a binary code stream.
  • the octree division is also performed first, but different from the geometric information encoding based on the octree, this method does not need to divide the point cloud step by step Divide into a unit cube with a side length of 1 ⁇ 1 ⁇ 1, but stop dividing when it is divided into a sub-block (block) with a side length of W.
  • the surface and block There are at most twelve intersection points (vertex) generated by the twelve sides of . Encode the vertex coordinates of each block in turn to generate a binary code stream.
  • the decoding end obtains the placeholder code of each node through continuous analysis according to the order of breadth-first traversal, and divides the nodes in turn until the 1x1x1 unit cube is obtained. The number of points contained in each leaf node is finally recovered to obtain the geometrically reconstructed point cloud information.
  • the attribute encoding and decoding of point cloud is based on the reconstructed geometric information. After the geometric encoding is completed, the geometric information is reconstructed.
  • attribute coding is mainly carried out for color and reflectance information. First judge whether to perform color space conversion. If color space conversion is performed, the color information is converted from RGB color space to YUV (brightness (Y) and chroma (U, V)) color space. Then, the reconstructed point cloud is recolored with the original point cloud, so that the unencoded attribute information corresponds to the reconstructed geometric information.
  • attribute prediction There are two modules in attribute information coding: attribute prediction and attribute transformation. Attribute prediction mainly uses the attribute prediction method based on point cloud Morton code for neighbor search.
  • This method predicts the attribute information of the point cloud to obtain the prediction residual, and then encodes the prediction residual.
  • there are two main transformation methods one is the sampling rate-based uplift transformation that relies on the Level of Detail (LOD) division, and the other is the direct Region Adaptive Hierarchal Transform (RAHT) transformation. These two methods will transform the attribute information from the spatial domain to the frequency domain, obtain high-frequency coefficients and low-frequency coefficients through transformation, and finally quantize and encode the coefficients to generate a binary code stream.
  • LOD Level of Detail
  • RAHT Region Adaptive Hierarchal Transform
  • the embodiment of the present application provides a point cloud encoding method, including:
  • Step 201 Determine a first point cloud information prediction list, the first point cloud information prediction list includes point cloud information of encoded nodes in the target point cloud.
  • the point cloud information of the encoded nodes in the target point cloud is stored in the first point cloud information prediction list.
  • the point cloud information of the coded nodes includes geometric information and attribute information of the coded nodes.
  • Step 202 Perform predictive encoding on the nodes to be encoded in the target point cloud according to the first point cloud information prediction list.
  • the first point cloud information prediction list is determined, and the first point cloud information prediction list includes the point cloud information of the encoded nodes in the target point cloud, and based on the first point cloud information prediction List, perform predictive encoding on the nodes to be encoded in the target point cloud.
  • This encoding method uses the point cloud information of the encoded node in the first point cloud information prediction list to predict and encode the node to be encoded, without the need to find the occupancy information of the neighbor node, which reduces the search complexity of the neighbor node, and does not need to save A large number of occupancy information of neighbor nodes effectively reduces memory overhead and improves coding efficiency.
  • the predictive encoding of the nodes to be encoded in the target point cloud includes:
  • the node to be encoded performs predictive encoding
  • L is the total number of coding layers contained in the target point cloud, L is a positive integer greater than 1, and M is a positive integer less than or equal to L.
  • the above-mentioned first parameter may specifically be geometry_enable_predict_flag
  • the above-mentioned second parameter may be specifically octree_division_end_nodeSizeLog2[3].
  • the first parameter geometry_enable_predict_flag is introduced in the Geometry Parameters Set (GPS), through which the first parameter is used to control whether to start the multi-tree-based predictive coding scheme, and to enable the multi-tree-based predictive coding scheme
  • the second parameter octree_division_end_nodeSizeLog2[3] is introduced to determine the start of predictive coding at a certain layer of the multi-tree, for example, the second parameter determines the start of predictive coding at the Mth layer of the multi-tree.
  • the target point cloud is divided to obtain a high-bit point cloud (the nodes to be encoded corresponding to the first coding layer to the M-1th coding layer above) and the low-bit feature cloud (the nodes to be encoded corresponding to the Mth coding layer to the L-th coding layer above), perform multi-tree coding on the above-mentioned high-bit feature cloud, perform predictive coding on the above-mentioned low-bit feature cloud, and pass the parameters geometry_enable_quantized_flag indicates whether to quantize the prediction residual obtained by predictive coding.
  • the predictive encoding of the nodes to be encoded in the target point cloud includes:
  • the third parameter indicates that the low-latency codec is turned on, perform predictive coding on the nodes to be coded corresponding to the L coded layers of the target point cloud;
  • L is the total number of coding layers contained in the target point cloud, and L is a positive integer greater than 1.
  • a third parameter low_latency_geometry_enable_flag is introduced into GPS, and whether to enable low-latency encoding is controlled through the third parameter, and when low-latency encoding is enabled, the above-mentioned first
  • the second parameter is the size of the bounding box corresponding to the target point cloud, that is, the encoding of the multi-tree is not performed, and the predictive encoding is directly performed.
  • the high-low ratio point cloud is divided (at this time, the nodes to be encoded corresponding to the first coding layer to the L-th coding layer above are all divided into low-bit point cloud cloud), when low_latency_geometry_enable_flag indicates that low-latency encoding is not enabled, determine whether geometry_enable_predict_flag indicates that the predictive encoding scheme is enabled, and when geometry_enable_predict_flag indicates that the predictive encoding scheme is enabled, divide the target point cloud to obtain a high-bit point cloud (above The nodes to be encoded corresponding to the first encoding layer to the M-1th encoding layer) and the low-bit cloud (the nodes to be encoded corresponding to the M-th encoding layer to the L-th encoding layer above), for the above-mentioned high-bit cloud Perform multi-tree encoding, perform
  • geometry_attribute_contemporary_enable_flag is used to determine whether to enable the parallel encoding and decoding of geometry information and attribute information.
  • attribute predictive encoding is performed; otherwise, attribute predictive encoding is performed based on the reconstructed geometric information.
  • the target point cloud needs to be sorted in a certain way in the preprocessing stage (arranging adjacent points in space in adjacent positions), and then the sorted point cloud Perform predictive encoding.
  • predictive encoding is performed on low-bit cloud according to the order of the original multi-tree encoding.
  • said determining the first point cloud information prediction list includes at least one of the following:
  • the fourth parameter indicates that the parallel encoding of the geometry information and the attribute information is not enabled
  • the first geometry information prediction list is determined, and the second attribute information prediction list is determined according to the reconstructed geometry information.
  • the fourth parameter is introduced in the sequence parameter set (Sequence Parameter Set, SPS), through geometry_attribute_contemporary_enable_flag, as shown in Figure 4 and Figure 5, through the first Four parameters to control whether to enable parallel encoding and decoding of geometric information and attribute information.
  • SPS Sequence Parameter Set
  • the prediction list is constructed for the attribute information in the same way to predict the target point cloud; when the parallel encoding and decoding of geometric information and attribute information is not enabled, the geometric information is first Encoding and reconstruction are carried out, the geometric information of the reconstructed point cloud is used as auxiliary information to construct the prediction list of attribute information, and the attribute information is predicted and encoded based on the prediction list of attribute information.
  • the determining the first point cloud information prediction list includes:
  • the initial point cloud information prediction list includes N1 prior values, N1 is a positive integer;
  • the prior value is updated according to the point cloud information of the encoded nodes in the target point cloud to obtain the first point cloud information prediction list.
  • the above-mentioned N1 prior values may be updated, or some of the above-mentioned N1 prior values may be updated.
  • the point distribution in the space is relatively dense, and its information usually has similarity. Therefore, for this situation, it is necessary to divide the point cloud into
  • the information of the encoded point before the point to be encoded is stored in the prediction list with some auxiliary information, and then the information of the current point can be predicted by selecting an appropriate value from the prediction list through certain rules.
  • updating the prior value according to the point cloud information of the encoded nodes in the target point cloud includes:
  • the first item when the information value or prediction residual of the point cloud information of the first coded node is greater than the first preset threshold, update the first prior value to the maximum prediction value corresponding to the current node to be coded, so
  • the first prior value is any prior value in the first point cloud information prediction list, the first coded node is the K0th coded node before the current node to be coded, and K0 is a positive integer ;
  • the second item update the first prior value to the point cloud information of the second encoded node, the second encoded node is the K1th encoded node before the current node to be encoded, K1 is a positive integer;
  • the third item update the first prior value to the first target point cloud information, the first target point cloud information is based on the point cloud information of the second encoded node and the point of the third encoded node As determined by the cloud information, the third coded node is the K2th coded node before the current node to be coded, and K2 is a positive integer;
  • the fourth item updating the first prior value to the first target geometric information, the first target geometric information is determined according to the geometric information of all encoded nodes in the target point cloud;
  • the fifth item update the first prior value to the point cloud information corresponding to the fourth encoded node
  • the fourth encoded node is the geometric distance between the target node of the target point cloud and the current node to be encoded
  • the nearest node the target node is the node corresponding to the first coding layer to the M-1 coding layer of the target point cloud
  • L is the total number of coding layers contained in the target point cloud
  • M is The coding layer that starts predictive coding in the target point cloud
  • L is a positive integer greater than 1
  • M is a positive integer less than or equal to L.
  • the maximum predicted value is related to M, specifically, the maximum predicted value may be 2 M -1. If the information value or the prediction residual of the point cloud information of the first coded node is less than or equal to the first preset threshold, the above-mentioned first prior value is not updated.
  • the first target point cloud information may be obtained by weighting the point cloud information of the second encoded node and the point cloud information of the third encoded interface.
  • the first target geometric information may be determined according to the average value of the geometric information of all encoded nodes in the target point cloud, for example, after encoding the geometric information of N points each time, Calculate the mean value of the geometric information of the N points and use it as the above-mentioned first target geometric information.
  • the size of the first point cloud information prediction list is equal to 4, that is, it includes point cloud information of 4 encoded nodes.
  • an initial point cloud information prediction list is constructed, and four prior values are filled in the initial point cloud information prediction list, for example, P0, P1, P2, and P3. It is then updated using the point cloud information of the encoded nodes.
  • the above-mentioned prior value may be the minimum predicted value corresponding to the coded node, such as 0.
  • the same update method can be used for update, for example, the first update method above is used for update, or different update methods can be used for update, for example, for P0, the first update method above is used for update For updating, use the above-mentioned second update method for P1, use the above-mentioned third update method for P2, and use the above-mentioned fourth update method for P3.
  • P0 is the value of the first position in the above prediction list
  • P1 is the value of the second position in the above prediction list
  • P2 is the value of the third position in the above prediction list
  • P3 is the fourth position in the above prediction list value.
  • the process of constructing the prediction list of the point cloud geometric information is the same as that of the parallel codec enabled.
  • the prediction list of point cloud attribute information can be constructed and updated using the reconstructed geometric information as auxiliary information.
  • the determining the second attribute information prediction list according to the reconstructed geometric information includes:
  • each coded node set includes at least one coded node, S1 is a positive integer, and S1 is determined according to the size of the second attribute information prediction list;
  • a second attribute information prediction list is determined according to the attribute information of the target coded node.
  • first construct the initial attribute information prediction list (initialize its size, and fill in some prior values), and then update the initial attribute information prediction list based on the attribute information of the target coded node to obtain the second attribute information list of predictions.
  • a search range (attrSearchRange) is first set. Then divide the search range into S1 intervals (that is, S1 coded node sets), and S1 is determined according to the size of the second attribute information prediction list. For example, the second attribute information prediction list contains 4 values, then S1 is 4. If the second attribute information prediction list contains 5 values, then S1 is 5. Assuming that S1 is 4, the above four intervals are respectively represented by attrSearchRange0, attrSearchRange1, attrSearchRange2 and attrSearchRange3, as shown in Figure 8, and the target encoded node closest to the geometric space position of the current node to be encoded is searched in these four intervals respectively, And use its attribute information to update the second attribute information prediction list.
  • the second value in the list uses the attribute information of the encoded node found in attrSearchRange2 to update the third value in the second attribute information prediction list, and uses the attribute information of the encoded node found in attrSearchRange3 to update
  • the fourth value in the second attribute information prediction list is updated, that is, the attribute information of the coded nodes found in each section corresponds to a value in the second attribute information prediction list.
  • the performing predictive encoding on the nodes to be encoded in the target point cloud according to the first point cloud information prediction list includes:
  • the above optimal prediction mode is the prediction mode corresponding to the target point cloud information in the prediction list, and the target point cloud information is the point cloud information in the prediction list with the smallest code stream estimation.
  • the optimal prediction mode is selected in the first point cloud information prediction list, and based on the optimal prediction mode, the point cloud information of the current node to be encoded is predicted to obtain the prediction residual, and then the optimal prediction mode is respectively The prediction residual corresponding to the current node to be encoded is encoded.
  • encoding the optimal prediction mode includes:
  • the optimal prediction mode is encoded according to the prediction mode of the encoded node in the target point cloud.
  • predMode of the coded node before the current node to be coded
  • predMode as auxiliary information for context design, that is, use predMode as the context of the prediction mode coding of the information of the current node to be coded, for the above optimal predictive mode encoding.
  • the performing predictive encoding on the nodes to be encoded in the target point cloud according to the first point cloud information prediction list includes:
  • Encoding is performed on the prediction residual.
  • the optimal prediction mode is the prediction mode corresponding to the target point cloud information in the prediction list
  • the target point cloud information is the point cloud information selected from the point cloud information of the encoded points in the prediction list .
  • the optimal prediction mode is the prediction mode corresponding to the target point cloud information in the prediction list, and the target point cloud information is the point cloud information in the prediction list with the smallest code stream estimate.
  • the optimal prediction mode is determined based on the point cloud information of the previously encoded points.
  • the residual of the point cloud information reconstruction value of two points in the previously encoded points is compared with the threshold th2. If it is greater than the threshold th2, the optimal prediction mode is selected as 3, that is, the third one in the prediction list is selected. The value is used as the predicted value of the current point to be encoded, otherwise, the subsequent judgment is performed.
  • encoding processing is performed on the optimal prediction mode and the prediction residual respectively.
  • encoding processing is performed on the prediction residual.
  • said encoding the prediction residual includes:
  • the effective number of bits of the prediction residual of the current node to be encoded is obtained;
  • the maximum value of the current node to be encoded can be determined according to the number of encoding layers in the target point cloud that enable predictive encoding. For example, if predictive encoding is enabled in the Mth encoding layer of the target point cloud, then the The maximum value is 2 M -1.
  • the prediction residual of the current node to be encoded use the maximum value of the current node to be encoded and the point cloud information corresponding to the optimal prediction mode to calculate the effective number of bits of the prediction residual of the current node to be encoded, and then According to the number of effective bits, the above-mentioned prediction residual is encoded by using an existing encoding method of the number of effective bits.
  • the point cloud encoding method of the embodiment of the present application predicts point cloud information (geometric information and attribute information) by establishing the first point cloud information prediction list and selecting the best prediction mode, and then uses the prediction mode of the previously encoded node as auxiliary information
  • the design context encodes the prediction mode of the current node to be encoded, and calculates the prediction residual of the current node to be encoded according to the maximum value of the point cloud information and the predicted value of the current node to be encoded (the point cloud information corresponding to the optimal prediction mode). effective bit number, and perform effective bit number encoding on the prediction residual based on the effective bit number.
  • the first point cloud information prediction list is determined, and the first point cloud information prediction list includes the point cloud information of the encoded nodes in the target point cloud, and based on the first point cloud information prediction List, perform predictive encoding on the nodes to be encoded in the target point cloud.
  • This encoding method uses the point cloud information of the encoded node in the first point cloud information prediction list to predict and encode the node to be encoded, without the need to find the occupancy information of the neighbor node, which reduces the search complexity of the neighbor node and does not need to save A large number of occupancy information of neighbor nodes effectively reduces memory overhead and improves coding efficiency.
  • the embodiment of the present application also provides a point cloud decoding method, including:
  • Step 901 Decode the target code stream to obtain the decoding information of the node to be decoded in the target code stream, the decoding information includes the prediction residual of the node to be decoded and the prediction mode of the node to be decoded, or, the decoding The information includes prediction residuals of the nodes to be decoded, and the target code stream is obtained after encoding the nodes in the target point cloud.
  • Step 902 Determine a second point cloud information prediction list, where the second point cloud information prediction list includes point cloud information of decoded nodes in the target code stream.
  • the point cloud information of the decoded nodes includes geometric information and attribute information of the decoded nodes.
  • Step 903 Obtain point cloud information corresponding to the node to be decoded according to the second point cloud information prediction list and the decoding information.
  • the decoding end reconstructs the point cloud information of the node to be decoded by using the second point cloud information prediction list according to the decoded prediction mode and prediction residual, and obtains the reconstructed point cloud information. Specifically, a corresponding prediction value is selected in the second point cloud information prediction list according to the decoded prediction mode, and the point cloud information is reconstructed based on the prediction value and prediction residual.
  • the decoding end reconstructs the point cloud information of the node to be decoded according to the decoded prediction residual, the prediction mode inferred from the point cloud information of the encoded point, and the second point cloud information prediction list, and obtains the reconstruction The subsequent point cloud information.
  • the target code stream is decoded to obtain the decoding information of the node to be decoded in the target code stream, and the decoding information includes the prediction residual of the node to be decoded and the prediction of the node to be decoded mode, or, the decoding information includes the prediction residual of the node to be decoded; determine the second point cloud information prediction list; according to the second point cloud information prediction list and the decoding information, obtain the corresponding point cloud information.
  • said decoding the target stream includes:
  • the node to be decoded performs decoding processing
  • L is the total number of decoding layers included in the target code stream, L is a positive integer greater than 1, and M is a positive integer less than or equal to L.
  • said decoding the target stream includes:
  • the decoding process is performed on the nodes to be decoded corresponding to the L coding layers of the target code stream;
  • L is the total number of decoding layers included in the target code stream, and L is a positive integer greater than 1.
  • said determining the second point cloud information prediction list includes at least one of the following:
  • the second geometry information prediction list is determined, and the third attribute information prediction list is determined according to the reconstructed geometry information.
  • said determining the second point cloud information prediction list includes:
  • the initial point cloud information prediction list includes N2 prior values, N2 is a positive integer;
  • the prior value is updated according to the point cloud information of the decoded node in the target code stream to obtain the second point cloud information prediction list.
  • updating the prior value according to the point cloud information of the decoded nodes in the target code stream includes:
  • the second priori value is updated to the maximum predicted value corresponding to the current node to be decoded, and the second priori
  • the verification value is any prior value in the second point cloud information prediction list, the first decoded node is the K3th decoded node before the current node to be decoded, and K3 is a positive integer;
  • the second coded node is the K4th decoded node before the current node to be decoded, and K4 is a positive integer ;
  • the second target point cloud information is determined according to the point cloud information of the second decoded node and the point cloud information of the third decoded node , the third decoded node is the K5th decoded node before the current node to be decoded, and K5 is a positive integer;
  • the second target geometric information is determined according to the geometric information of all decoded nodes in the target point cloud;
  • the fourth decoded node is the node with the closest geometric distance to the current node to be decoded among the target nodes of the target point cloud
  • the target node is the node corresponding to the first decoding layer to the M-1th decoding layer of the target code stream
  • L is the total number of decoding layers contained in the target code stream
  • M is the target code stream
  • the decoding layer that enables predictive decoding in the stream, L is a positive integer greater than 1, and M is a positive integer less than or equal to L.
  • the determining the third attribute information prediction list according to the reconstructed geometric information includes:
  • each decoded node set includes at least one encoded node, S2 is a positive integer, and S2 is determined according to the size of the third attribute information prediction list;
  • the point cloud decoding method in the embodiment of the present application is a method corresponding to the above-mentioned point cloud coding method, and the specific implementation process is similar to that of the above-mentioned point cloud coding method, and will not be repeated here.
  • the target code stream is decoded to obtain the prediction residual of the node to be decoded in the target code stream and the prediction mode of the node to be decoded; determine the second point cloud information prediction list; according to The second point cloud information prediction list, the prediction residual and the prediction mode obtain the point cloud information corresponding to the node to be decoded.
  • the point cloud encoding method provided in the embodiment of the present application may be executed by a point cloud encoding device, or a control module in the point cloud encoding device for executing the point cloud encoding method.
  • the point cloud coding device provided in the embodiment of the present application is described by taking the point cloud coding device executing the point cloud coding method as an example.
  • the embodiment of the present application provides a point cloud encoding device 1000, including:
  • the first determining module 1001 is used to determine the first point cloud information prediction list, and the first point cloud information prediction list includes the point cloud information of encoded nodes in the target point cloud;
  • the first processing module 1002 is configured to perform predictive encoding on the nodes to be encoded in the target point cloud according to the first point cloud information prediction list.
  • the first processing module is configured to perform predictive encoding on the target point when the first parameter indicates that predictive encoding is performed, and the second parameter indicates that predictive encoding is enabled on the Mth encoding layer of the target point cloud.
  • the nodes to be encoded corresponding to the Mth to Lth encoding layers of the cloud perform predictive encoding;
  • L is the total number of coding layers contained in the target point cloud, L is a positive integer greater than 1, and M is a positive integer less than or equal to L.
  • the first processing module is configured to perform predictive encoding on the nodes to be encoded corresponding to the L encoding layers of the target point cloud when the third parameter indicates that low-latency encoding is enabled;
  • L is the total number of coding layers contained in the target point cloud, and L is a positive integer greater than 1.
  • the first determining module is configured to perform at least one of the following:
  • the fourth parameter indicates that the parallel encoding of the geometry information and the attribute information is not enabled
  • the first geometry information prediction list is determined, and the second attribute information prediction list is determined according to the reconstructed geometry information.
  • the first determination module includes:
  • the first construction submodule is used to construct an initial point cloud information prediction list, and the initial point cloud information prediction list includes N1 prior values, and N1 is a positive integer;
  • the first update sub-module is configured to update the prior value according to the point cloud information of the encoded nodes in the target point cloud to obtain the first point cloud information prediction list.
  • the first update submodule is used to update the first priori value to the current pending
  • the maximum predicted value corresponding to the coding node is any one prior value in the first point cloud information prediction list
  • the first coded node is the K0th node before the current node to be coded coded nodes, K0 is a positive integer
  • the second coded node is the K1th coded node before the current node to be coded, and K1 is a positive integer ;
  • the first target point cloud information is determined according to the point cloud information of the second encoded node and the point cloud information of the third encoded node , the third coded node is the K2th coded node before the current node to be coded, and K2 is a positive integer;
  • the first target geometric information is determined according to the geometric information of all encoded nodes in the target point cloud;
  • the fourth encoded node is the node with the closest geometric distance to the current node to be encoded among the target nodes of the target point cloud
  • the target node is the node corresponding to the first coding layer to the M-1 coding layer of the target point cloud
  • L is the total number of coding layers contained in the target point cloud
  • M is the target point
  • the coding layer that starts the predictive coding in the cloud, L is a positive integer greater than 1
  • M is a positive integer less than or equal to L.
  • the first determination module includes:
  • the first determination submodule is used to determine S1 coded node sets, each coded node set includes at least one coded node, S1 is a positive integer, and S1 is determined according to the size of the second attribute information prediction list;
  • the first selection submodule is used to find the target coded node with the closest geometric distance to the current node to be coded in each coded node set;
  • the second determining submodule is configured to determine a second attribute information prediction list according to the attribute information of the target coded node.
  • the first processing module includes:
  • the third determination sub-module is used to determine the optimal prediction mode according to the first point cloud information prediction list, wherein different point cloud information in the first prediction list corresponds to different prediction modes;
  • the fourth determination submodule is used to perform prediction processing on the current node to be encoded according to the optimal prediction mode, and obtain the prediction residual corresponding to the current node to be encoded;
  • An encoding sub-module is configured to encode the optimal prediction mode and the prediction residual respectively.
  • the optimal prediction mode is the prediction mode corresponding to the target point cloud information in the prediction list, and the target point cloud information is the point cloud information in the prediction list with the smallest code stream estimate.
  • the encoding submodule is configured to perform encoding processing on the optimal prediction mode according to the prediction mode of encoded nodes in the target point cloud.
  • the first processing module includes:
  • the seventh determining submodule is used to determine the optimal prediction mode according to the first point cloud information prediction list, wherein different point cloud information in the first prediction list corresponds to different prediction modes;
  • the eighth determining submodule is used to perform prediction processing on the current node to be encoded according to the optimal prediction mode, and obtain the prediction residual corresponding to the current node to be encoded;
  • the first encoding sub-module is configured to encode the prediction residual.
  • the optimal prediction mode is the prediction mode corresponding to the target point cloud information in the prediction list, and the target point cloud information is a point selected from the point cloud information of encoded points in the prediction list cloud information.
  • the encoding submodule includes:
  • the first acquisition unit is used to obtain the effective number of bits of the prediction residual of the current node to be encoded according to the maximum value of the current node to be encoded and the point cloud information corresponding to the optimal prediction mode;
  • a coding unit configured to code the prediction residual according to the number of effective bits.
  • the first point cloud information prediction list is determined, the first point cloud information prediction list includes the point cloud information of the encoded nodes in the target point cloud, and based on the first point cloud information prediction list, the target The nodes to be coded in the point cloud are predictively coded.
  • This encoding method uses the point cloud information of the encoded node in the first point cloud information prediction list to predict and encode the node to be encoded, without the need to find the occupancy information of the neighbor node, which reduces the search complexity of the neighbor node, and does not need to save A large number of occupancy information of neighbor nodes effectively reduces memory overhead and improves coding efficiency.
  • the point cloud encoding device in the embodiment of this application can be a device, a device with an operating system or an electronic device, or it can be a component, an integrated circuit, or a chip in a terminal.
  • the apparatus or electronic equipment may be a mobile terminal or a non-mobile terminal.
  • the point cloud encoding device provided in the embodiment of the present application can realize the various processes realized by the method embodiments in Fig. 2 to Fig. 8, and achieve the same technical effect. To avoid repetition, details are not repeated here.
  • the embodiment of the present application also provides a point cloud encoding device, including a processor 1101, a memory 1102, and a program or Instructions, when the program or instructions are executed by the processor 1101, each process of the above-mentioned point cloud encoding method embodiment can be achieved, and the same technical effect can be achieved. To avoid repetition, details are not repeated here.
  • the embodiment of the present application also provides a point cloud encoding device, including a processor and a communication interface, the processor is used to: determine the first point cloud information prediction list, the first point cloud information prediction list includes the coded points in the target point cloud The point cloud information of the nodes; according to the first point cloud information prediction list, perform predictive coding on the nodes to be coded in the target point cloud.
  • Fig. 12 is a schematic diagram of the hardware structure of a point cloud encoding processing device implementing an embodiment of the present application
  • the point cloud encoding processing device includes but not limited to: a radio frequency unit 1201, a network module 1202, an audio output unit 1203, an input unit 1204, a sensor 1205 , a display unit 1206 , a user input unit 1207 , an interface unit 1208 , a memory 1209 , and at least some components in a processor 1210 and the like.
  • the point cloud encoding processing device 1200 can also include a power supply (such as a battery) for supplying power to various components, and the power supply can be logically connected to the processor 1210 through the power management system, so as to realize the management of charging and discharging through the power management system. , and power management functions.
  • a power supply such as a battery
  • the structure shown in Fig. 12 does not constitute a limitation to the point cloud encoding processing device, and the point cloud encoding processing device may include more or less components than shown in the illustration, or combine some components, or arrange different components, in This will not be repeated here.
  • the input unit 1204 may include a graphics processor (Graphics Processing Unit, GPU) 12041 and a microphone 12042, and the graphics processor 12041 is used for the image capture device (such as the image data of the still picture or video obtained by the camera) for processing.
  • the display unit 1206 may include a display panel 12061, and the display panel 12061 may be configured in the form of a liquid crystal display, an organic light emitting diode, or the like.
  • the user input unit 1207 includes a touch panel 12071 and other input devices 12072 . Touch panel 12071, also called touch screen.
  • the touch panel 12071 may include two parts, a touch detection device and a touch controller.
  • Other input devices 12072 may include, but are not limited to, physical keyboards, function keys (such as volume control keys, switch keys, etc.), trackballs, mice, and joysticks, which will not be repeated here.
  • the radio frequency unit 1201 includes, but is not limited to, an antenna, at least one amplifier, a transceiver, a coupler, a low noise amplifier, a duplexer, and the like.
  • the memory 1209 can be used to store software programs or instructions as well as various data.
  • the memory 1209 may mainly include a program or instruction storage area and a data storage area, wherein the program or instruction storage area may store an operating system, an application program or instructions required by at least one function (such as a sound playback function, an image playback function, etc.) and the like.
  • the memory 1209 may include a high-speed random access memory, and may also include a nonvolatile memory, wherein the nonvolatile memory may be a read-only memory (Read-Only Memory, ROM), a programmable read-only memory (Programmable ROM) , PROM), erasable programmable read-only memory (Erasable PROM, EPROM), electrically erasable programmable read-only memory (Electrically EPROM, EEPROM) or flash memory.
  • ROM Read-Only Memory
  • PROM programmable read-only memory
  • PROM erasable programmable read-only memory
  • Erasable PROM Erasable PROM
  • EPROM electrically erasable programmable read-only memory
  • EEPROM electrically erasable programmable read-only memory
  • flash memory for example at least one magnetic disk storage device, flash memory device, or other non-volatile solid-state storage device.
  • the processor 1210 may include one or more processing units; optionally, the processor 1210 may integrate an application processor and a modem processor, wherein the application processor mainly processes the operating system, user interface, application programs or instructions, etc., Modem processors mainly handle wireless communications, such as baseband processors. It can be understood that the foregoing modem processor may not be integrated into the processor 1210 .
  • the processor 1210 is configured to determine a first point cloud information prediction list, the first point cloud information prediction list includes point cloud information of encoded nodes in the target point cloud; according to the first point cloud information prediction list, Predictive encoding is performed on the nodes to be encoded in the target point cloud.
  • the processor 1210 is configured to perform predictive coding on the target point when the first parameter indicates that predictive coding is performed, and the second parameter indicates that predictive coding is enabled on the Mth coding layer of the target point cloud.
  • the nodes to be encoded corresponding to the Mth to Lth encoding layers of the cloud perform predictive encoding;
  • L is the total number of coding layers included in the target point cloud, L is a positive integer greater than 1, and M is a positive integer less than or equal to L.
  • the processor 1210 is configured to perform predictive encoding on the nodes to be encoded corresponding to the L encoding layers of the target point cloud when the third parameter indicates that low-latency encoding is enabled;
  • L is the total number of coding layers contained in the target point cloud, and L is a positive integer greater than 1.
  • the processor 1210 is configured to perform at least one of the following:
  • the fourth parameter indicates that the parallel encoding of the geometry information and the attribute information is not enabled
  • the first geometry information prediction list is determined, and the second attribute information prediction list is determined according to the reconstructed geometry information.
  • the processor 1210 is configured to construct an initial point cloud information prediction list, the initial point cloud information prediction list includes N1 prior values, and N1 is a positive integer; according to the coded nodes in the target point cloud The point cloud information of the first point cloud information is updated, and the prior value is updated to obtain the first point cloud information prediction list.
  • the processor 1210 is configured to update the first priori value to the current to-be-coded
  • the maximum prediction value corresponding to the node the first prior value is any prior value in the first point cloud information prediction list, and the first coded node is the K0th node before the current node to be coded Coded node, K0 is a positive integer;
  • the second coded node is the K1th coded node before the current node to be coded, and K1 is a positive integer ;
  • the first target point cloud information is determined according to the point cloud information of the second encoded node and the point cloud information of the third encoded node , the third coded node is the K2th coded node before the current node to be coded, and K2 is a positive integer;
  • the first target geometric information is determined according to the geometric information of all encoded nodes in the target point cloud;
  • the fourth encoded node is the node with the closest geometric distance to the current node to be encoded among the target nodes of the target point cloud
  • the target node is the node corresponding to the first coding layer to the M-1 coding layer of the target point cloud
  • L is the total number of coding layers contained in the target point cloud
  • M is the target point
  • the coding layer that starts the predictive coding in the cloud, L is a positive integer greater than 1
  • M is a positive integer less than or equal to L.
  • the processor 1210 is configured to determine S1 coded node sets, each coded node set includes at least one coded node, S1 is a positive integer, and S1 is determined according to the size of the second attribute information prediction list of;
  • a second attribute information prediction list is determined according to the attribute information of the target coded node.
  • the processor 1210 is configured to determine an optimal prediction mode according to the first point cloud information prediction list, where different point cloud information in the first prediction list corresponds to different prediction modes;
  • the optimal prediction mode is the prediction mode corresponding to the target point cloud information in the prediction list, and the target point cloud information is the point cloud information in the prediction list with the smallest code stream estimate.
  • the processor 1210 is configured to perform encoding processing on the optimal prediction mode according to the prediction mode of encoded nodes in the target point cloud.
  • the processor 1210 is configured to determine an optimal prediction mode according to the first point cloud information prediction list, where different point cloud information in the first prediction list corresponds to different prediction modes; according to The optimal prediction mode performs prediction processing on the current node to be encoded to obtain a prediction residual corresponding to the current node to be encoded; and performs encoding processing on the prediction residual.
  • the optimal prediction mode is the prediction mode corresponding to the target point cloud information in the prediction list, and the target point cloud information is a point selected from the point cloud information of encoded points in the prediction list cloud information.
  • the processor 1210 is configured to obtain the effective number of bits of the prediction residual of the current node to be encoded according to the maximum value of the current node to be encoded and the point cloud information corresponding to the optimal prediction mode;
  • the first point cloud information prediction list is determined, the first point cloud information prediction list includes the point cloud information of the encoded nodes in the target point cloud, and based on the first point cloud information prediction list, the target The nodes to be coded in the point cloud are predictively coded.
  • This encoding method uses the point cloud information of the encoded node in the first point cloud information prediction list to predict and encode the node to be encoded, without the need to find the occupancy information of the neighbor node, which reduces the search complexity of the neighbor node, and does not need to save A large number of occupancy information of neighbor nodes effectively reduces memory overhead and improves coding efficiency.
  • the point cloud decoding method provided in the embodiment of the present application may be executed by a point cloud decoding device, or a control module in the point cloud decoding device for executing the point cloud decoding method.
  • the point cloud decoding device provided in the embodiment of the present application is described by taking the point cloud decoding device executing the point cloud decoding processing method as an example.
  • the embodiment of the present application provides a point cloud decoding device 1300, including:
  • the second processing module 1301 is configured to perform decoding processing on the target code stream to obtain decoding information of the node to be decoded in the target code stream, the decoding information including the prediction residual of the node to be decoded and the prediction mode of the node to be decoded, Alternatively, the decoding information includes the prediction residual of the node to be decoded, and the target code stream is obtained after encoding the nodes in the target point cloud;
  • the second determining module 1302 is configured to determine a second point cloud information prediction list, and the second point cloud information prediction list includes point cloud information of decoded nodes in the target code stream;
  • the first obtaining module 1303 is configured to obtain point cloud information corresponding to the node to be decoded according to the second point cloud information prediction list and the decoding information.
  • the second processing module is configured to perform predictive decoding on the target code stream when the first parameter indicates that predictive decoding is performed, and the second parameter indicates that predictive decoding is enabled on the Mth decoding layer of the target code stream.
  • the nodes to be decoded corresponding to the Mth to Lth decoding layers of the stream perform decoding processing;
  • L is the total number of decoding layers included in the target code stream, L is a positive integer greater than 1, and M is a positive integer less than or equal to L.
  • the second processing module is configured to perform decoding processing on the nodes to be decoded corresponding to the L coding layers of the target code stream when the third parameter indicates that low-latency decoding is enabled;
  • L is the total number of decoding layers included in the target code stream, and L is a positive integer greater than 1.
  • the second determining module is configured to perform at least one of the following:
  • the second geometry information prediction list is determined, and the third attribute information prediction list is determined according to the reconstructed geometry information.
  • the second determination module includes:
  • the second construction submodule is used to construct an initial point cloud information prediction list, and the initial point cloud information prediction list includes N2 prior values, and N2 is a positive integer;
  • the second update sub-module is configured to update the prior value according to the point cloud information of the decoded nodes in the target code stream to obtain the second point cloud information prediction list.
  • the second update submodule is used to update the second priori value to the current pending
  • the maximum prediction value corresponding to the decoding node the second prior value is any prior value in the second point cloud information prediction list
  • the first decoded node is the K3th node before the current node to be decoded decoded nodes, K3 is a positive integer
  • the second coded node is the K4th decoded node before the current node to be decoded, and K4 is a positive integer ;
  • the second target point cloud information is determined according to the point cloud information of the second decoded node and the point cloud information of the third decoded node , the third decoded node is the K5th decoded node before the current node to be decoded, and K5 is a positive integer;
  • the second target geometric information is determined according to the geometric information of all decoded nodes in the target point cloud;
  • the fourth decoded node is the node with the closest geometric distance to the current node to be decoded among the target nodes of the target point cloud
  • the target node is the node corresponding to the first decoding layer to the M-1th decoding layer of the target code stream
  • L is the total number of decoding layers contained in the target code stream
  • M is the target code stream
  • the decoding layer that enables predictive decoding in the stream, L is a positive integer greater than 1, and M is a positive integer less than or equal to L.
  • the second determination module includes:
  • the fifth determining submodule is used to determine S2 sets of decoded nodes, each set of decoded nodes includes at least one encoded node, S2 is a positive integer, and S2 is determined according to the size of the third attribute information prediction list;
  • the second selection submodule is used to find the target decoded node with the closest geometric distance to the current node to be decoded in each set of decoded nodes;
  • the sixth determining submodule is configured to determine a third attribute information prediction list according to the attribute information of the target decoded node.
  • the target code stream is decoded to obtain the decoding information of the node to be decoded in the target code stream
  • the decoding information includes the prediction residual of the node to be decoded and the prediction mode of the node to be decoded, or
  • the decoding information includes prediction residuals of the nodes to be decoded; determining a second point cloud information prediction list; and obtaining point cloud information corresponding to the to-be-decoded nodes according to the second point cloud information prediction list and the decoding information.
  • the point cloud decoding device in the embodiment of the present application may be a device, a device with an operating system or an electronic device, or a component, an integrated circuit, or a chip in a terminal.
  • the apparatus or electronic equipment may be a mobile terminal or a non-mobile terminal.
  • the point cloud decoding device provided by the embodiment of the present application can realize each process realized by the method embodiment shown in FIG. 9 and achieve the same technical effect. To avoid repetition, details are not repeated here.
  • the embodiment of the present application also provides a point cloud decoding device (see Figure 11 for its structural schematic diagram), including a processor, a memory, and programs or instructions stored in the memory and operable on the processor , when the program or instruction is executed by the processor, each process of the above-mentioned point cloud decoding method embodiment can be achieved, and the same technical effect can be achieved. To avoid repetition, details are not repeated here.
  • the embodiment of the present application also provides a point cloud decoding device, including a processor and a communication interface, the processor is used to: decode the target code stream to obtain the decoding information of the nodes to be decoded in the target code stream, and the decoding
  • the information includes the prediction residual of the node to be decoded and the prediction mode of the node to be decoded, or the decoding information includes the prediction residual of the node to be decoded
  • the target code stream is obtained after encoding the nodes in the target point cloud determine the second point cloud information prediction list, the second point cloud information prediction list includes the point cloud information of the decoded node in the target code stream; according to the second point cloud information prediction list and the decoding information, obtain The point cloud information corresponding to the node to be decoded.
  • the embodiment of the present application also provides a point cloud decoding device, its hardware structure schematic diagram can be seen in Figure 12, the point cloud decoding device includes but not limited to: radio frequency unit, network module, audio output unit, input unit, sensor, display unit , a user input unit, an interface unit, a memory, and at least some components in a processor.
  • the point cloud decoding device can also include a power supply (such as a battery) for supplying power to each component. Consumption management and other functions.
  • a power supply such as a battery
  • the structure shown in FIG. 12 does not constitute a limitation to the point cloud decoding processing device.
  • the point cloud decoding processing device may include more or less components than shown in the figure, or combine certain components, or arrange different components. This will not be repeated here.
  • the input unit may include a graphics processor (Graphics Processing Unit, GPU) and a microphone, and the graphics processor is obtained by an image capture device (such as a camera) in a video capture mode or an image capture mode. image data of still pictures or videos.
  • the display unit may include a display panel, and the display panel may be configured in the form of a liquid crystal display, an organic light emitting diode, or the like.
  • the user input unit includes a touch panel and other input devices. Touch panel, also known as touch screen. The touch panel can include two parts: a touch detection device and a touch controller.
  • Other input devices may include, but are not limited to, physical keyboards, function keys (such as volume control buttons, switch buttons, etc.), trackballs, mice, and joysticks, which will not be repeated here.
  • the radio frequency unit includes, but is not limited to, an antenna, at least one amplifier, a transceiver, a coupler, a low noise amplifier, a duplexer, and the like.
  • Memory can be used to store software programs or instructions as well as various data.
  • the memory may mainly include a program or instruction storage area and a data storage area, wherein the program or instruction storage area may store an operating system, an application program or instructions required by at least one function (such as a sound playback function, an image playback function, etc.) and the like.
  • the memory may include a high-speed random access memory, and may also include a nonvolatile memory, wherein the nonvolatile memory may be a read-only memory (Read-Only Memory, ROM), a programmable read-only memory (Programmable ROM, PROM), erasable programmable read-only memory (Erasable PROM, EPROM), electrically erasable programmable read-only memory (Electrically EPROM, EEPROM) or flash memory.
  • ROM Read-Only Memory
  • PROM programmable read-only memory
  • Erasable PROM Erasable PROM
  • EPROM electrically erasable programmable read-only memory
  • EEPROM electrically erasable programmable read-only memory
  • flash memory for example at least one magnetic disk storage device, flash memory device, or other non-volatile solid-state storage device.
  • the processor may include one or more processing units; optionally, the processor may integrate an application processor and a modem processor, wherein the application processor mainly processes the operating system, user interface and application programs or instructions, etc., and the modem Tuning processors mainly handle wireless communications, such as baseband processors. It can be understood that the foregoing modem processor may not be integrated into the processor.
  • the processor is configured to decode a target code stream to obtain decoding information of a node to be decoded in the target code stream, where the decoding information includes a prediction residual of the node to be decoded and a prediction mode of the node to be decoded, or , the decoding information includes the prediction residual of the node to be decoded, the target code stream is obtained after encoding the nodes in the target point cloud; determine the second point cloud information prediction list, the second point cloud information The prediction list includes point cloud information of decoded nodes in the target code stream; according to the second point cloud information prediction list and the decoding information, the point cloud information corresponding to the node to be decoded is obtained.
  • the processor is further configured to perform predictive decoding on the target code stream when the first parameter indicates that predictive decoding is performed, and the second parameter indicates that predictive decoding is enabled on the Mth decoding layer of the target code stream.
  • the nodes to be decoded corresponding to the Mth to Lth decoding layers of the stream perform decoding processing;
  • L is the total number of decoding layers included in the target code stream, L is a positive integer greater than 1, and M is a positive integer less than or equal to L.
  • the processor is further configured to perform decoding processing on the nodes to be decoded corresponding to the L coding layers of the target code stream when the third parameter indicates that low-latency decoding is enabled;
  • L is the total number of decoding layers included in the target code stream, and L is a positive integer greater than 1.
  • the processor is also configured to perform at least one of the following:
  • the second geometry information prediction list is determined, and the third attribute information prediction list is determined according to the reconstructed geometry information.
  • the processor is further configured to construct an initial point cloud information prediction list, the initial point cloud information prediction list includes N2 prior values, and N2 is a positive integer; according to the decoded node in the target code stream The point cloud information is updated, and the prior value is updated to obtain the second point cloud information prediction list.
  • the processor is further configured to update the second priori value to the current to-be-decoded value when the information value or prediction residual of the point cloud information of the first decoded node is greater than a second preset threshold
  • the maximum prediction value corresponding to the node, the second prior value is any prior value in the second point cloud information prediction list, and the first decoded node is the K3th one before the current node to be decoded Decoded node, K3 is a positive integer;
  • the second coded node is the K4th decoded node before the current node to be decoded, and K4 is a positive integer ;
  • the second target point cloud information is determined according to the point cloud information of the second decoded node and the point cloud information of the third decoded node , the third decoded node is the K5th decoded node before the current node to be decoded, and K5 is a positive integer;
  • the second target geometric information is determined according to the geometric information of all decoded nodes in the target point cloud;
  • the fourth decoded node is the node with the closest geometric distance to the current node to be decoded among the target nodes of the target point cloud
  • the target node is the node corresponding to the first decoding layer to the M-1th decoding layer of the target code stream
  • L is the total number of decoding layers contained in the target code stream
  • M is the target code stream
  • the decoding layer that enables predictive decoding in the stream, L is a positive integer greater than 1, and M is a positive integer less than or equal to L.
  • the processor is further configured to determine S2 sets of decoded nodes, each set of decoded nodes includes at least one encoded node, S2 is a positive integer, and S2 is determined according to the size of the prediction list of the third attribute information of;
  • the point cloud decoding device in the embodiment of the present application performs decoding processing on the target code stream to obtain the decoding information of the node to be decoded in the target code stream, and the decoding information includes the prediction residual of the node to be decoded and the prediction of the node to be decoded mode, or, the decoding information includes the prediction residual of the node to be decoded; determine the second point cloud information prediction list; according to the second point cloud information prediction list and the decoding information, obtain the corresponding point cloud information.
  • the embodiment of the present application also provides a readable storage medium, on which programs or instructions are stored.
  • the storage medium may be volatile or nonvolatile.
  • the processor is a processor in the point cloud encoding device or the point cloud decoding device described in the above embodiments.
  • the readable storage medium includes computer readable storage medium, such as computer read-only memory (Read-Only Memory, ROM), random access memory (Random Access Memory, RAM), magnetic disk or optical disk, etc.
  • the embodiment of the present application further provides a chip, the chip includes a processor and a communication interface, the communication interface is coupled to the processor, and the processor is used to run programs or instructions to implement the above-mentioned point cloud decoding method or point
  • the chip includes a processor and a communication interface
  • the communication interface is coupled to the processor
  • the processor is used to run programs or instructions to implement the above-mentioned point cloud decoding method or point
  • the chip mentioned in the embodiment of the present application may also be called a system-on-chip, a system-on-chip, a system-on-a-chip, or a system-on-a-chip.
  • the embodiment of the present application also provides a computer program product, the computer program product is stored in a non-transitory storage medium, and the computer program product is executed by at least one processor to implement the above point cloud decoding method or point cloud encoding
  • Each process of the method embodiment can achieve the same technical effect, and will not be repeated here to avoid repetition.
  • the term “comprising”, “comprising” or any other variation thereof is intended to cover a non-exclusive inclusion such that a process, method, article or apparatus comprising a set of elements includes not only those elements, It also includes other elements not expressly listed, or elements inherent in the process, method, article, or device. Without further limitations, an element defined by the phrase “comprising a " does not preclude the presence of additional identical elements in the process, method, article, or apparatus comprising that element.
  • the scope of the methods and devices in the embodiments of the present application is not limited to performing functions in the order shown or discussed, and may also include performing functions in a substantially simultaneous manner or in reverse order according to the functions involved. Functions are performed, for example, the described methods may be performed in an order different from that described, and various steps may also be added, omitted, or combined. Additionally, features described with reference to certain examples may be combined in other examples.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本申请公开了一种点云编码方法、解码方法及装置,本申请实施例的点云编码方法包括:确定第一点云信息预测列表,所述第一点云信息预测列表包括目标点云中已编码节点的点云信息;根据所述第一点云信息预测列表,对所述目标点云中的待编码节点进行预测编码。

Description

点云编码方法、解码方法及装置
相关申请的交叉引用
本申请主张在2021年06月11日在中国提交的中国专利申请No.202110656061.3的优先权,以及主张在2021年08月17日在中国提交的中国专利申请No.202110941633.2的优先权,其全部内容通过引用包含于此。
技术领域
本申请属于点云处理技术领域,特别涉及一种点云编码方法、解码方法及装置。
背景技术
在数字音视频编解码技术标准(Audio Video coding Standard,AVS)点云编码参考软件模型(Point Cloud Reference Software Model,PCRM)V3.0中,基于多叉树进行几何编解码时,需要存储邻居节点的占位信息来对当前待编码节点的占位信息进行预测编码。由于基于多叉树的几何编解码方法在接近叶子节点的八叉树层中,叶子节点数目会呈指数型增长,因此现有预测编码方法会导致内存开销很大,并且邻居节点查找的复杂度也会很高,导致编码效率不高。
发明内容
本申请实施例提供一种点云编码方法、解码方法及装置,能够解决现有预测编码方法会导致内存开销很大,并且邻居查找的复杂度也会很高,导致编码效率不高的问题。
第一方面,提供了一种点云编码方法,包括:
确定第一点云信息预测列表,所述第一点云信息预测列表包括目标点云中已编码节点的点云信息;
根据所述第一点云信息预测列表,对所述目标点云中的待编码节点进行 预测编码。
第二方面,提供了一种点云解码方法,包括:
对目标码流进行解码处理,得到所述目标码流中待解码节点的解码信息,所述解码信息包括待解码节点的预测残差和待解码节点的预测模式,或者,所述解码信息包括待解码节点的预测残差,所述目标码流是对目标点云中的节点进行编码处理后得到的;
确定第二点云信息预测列表,所述第二点云信息预测列表包括目标码流中已解码节点的点云信息;
根据所述第二点云信息预测列表和所述解码信息,获取所述待解码节点对应的点云信息。
第三方面,提供了一种点云编码装置,包括:
第一确定模块,用于确定第一点云信息预测列表,所述第一点云信息预测列表包括目标点云中已编码节点的点云信息;
第一处理模块,用于根据所述第一点云信息预测列表,对所述目标点云中的待编码节点进行预测编码。
第四方面,提供了一种点云解码装置,包括:
第二处理模块,用于对目标码流进行解码处理,得到所述目标码流中待解码节点的解码信息,所述解码信息包括待解码节点的预测残差和待解码节点的预测模式,或者,所述解码信息包括待解码节点的预测残差,所述目标码流是对目标点云中的节点进行编码处理后得到的;
第二确定模块,用于确定第二点云信息预测列表,所述第二点云信息预测列表包括目标码流中已解码节点的点云信息;
第一获取模块,用于根据所述第二点云信息预测列表和所述解码信息,获取所述待解码节点对应的点云信息。
第五方面,提供了一种点云编码装置,包括处理器,存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第一方面所述的方法的步骤。
第六方面,提供了一种点云编码装置,包括处理器及通信接口,其中,所述处理器用于确定第一点云信息预测列表,所述第一点云信息预测列表包括目标点云中已编码节点的点云信息;根据所述第一点云信息预测列表,对所述目标点云中的待编码节点进行预测编码。
第七方面,提供了一种点云解码装置,包括处理器,存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第二方面所述的方法的步骤。
第八方面,提供了一种点云解码装置,包括处理器及通信接口,其中,所述处理器用于对目标码流进行解码处理,得到所述目标码流中待解码节点的解码信息,所述解码信息包括待解码节点的预测残差和待解码节点的预测模式,或者,所述解码信息包括待解码节点的预测残差,所述目标码流是对目标点云中的节点进行编码处理后得到的;确定第二点云信息预测列表,所述第二点云信息预测列表包括目标码流中已解码节点的点云信息;根据所述第二点云信息预测列表和所述解码信息,获取所述待解码节点对应的点云信息。
第九方面,提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第一方面所述的方法的步骤,或者实现如第二方面所述的方法的步骤。
第十方面,提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现如第一方面所述的方法,或实现如第二方面所述的方法。
第十一方面,提供了一种计算机程序/程序产品,所述计算机程序/程序产品被存储在非瞬态的存储介质中,所述程序/程序产品被至少一个处理器执行以实现如第一方面或第二方面所述的方法的步骤。
在本申请实施例中,确定第一点云信息预测列表,所述第一点云信息预测列表包括目标点云中已编码节点的点云信息,并基于该第一点云信息预测列表,对目标点云中的待编码节点进行预测编码。该编码方式利用上述第一 点云信息预测列表中的已编码节点的点云信息对待编码节点进行预测编码,无需查找邻居节点的占位信息,降低了邻居节点的搜索复杂度,且不需要保存大量的邻居节点的占位信息,有效降低了内存开销,并提高了编码效率。
附图说明
图1是G-PCC编解码框架示意图;
图2是本申请实施例的点云编码方法的流程示意图之一;
图3是本申请实施例的点云编码方法的流程示意图之二;
图4是本申请实施例的点云编码方法的流程示意图之三;
图5是本申请实施例的点云编码方法的流程示意图之四;
图6是本申请实施例中点云信息预测列表的更新示意图之一;
图7是本申请实施例中点云信息预测列表的更新示意图之二;
图8是本申请实施例中第二属性信息预测列表的更新示意图;
图9是本申请实施例的点云解码方法的流程示意图;
图10表示本申请实施例的点云编码装置的模块示意图;
图11表示本申请实施例的点云编码装置的结构框图之一;
图12表示本申请实施例的点云编码装置的结构框图之二;
图13表示本申请实施例的点云解码装置的模块示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”所区别的对象通常为一类, 并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”一般表示前后关联对象是一种“或”的关系。
本申请实施例中的点云编码方法对应的编码器和点云解码方法对应的解码器均可以为终端,该终端也可以称作终端设备或者用户设备(User Equipment,UE),终端可以是手机、平板电脑(Tablet Personal Computer)、膝上型电脑(Laptop Computer)或称为笔记本电脑、个人数字助理(Personal Digital Assistant,PDA)、掌上电脑、上网本、超级移动个人计算机(Ultra-Mobile Personal Computer,UMPC)、移动上网装置(Mobile Internet Device,MID)、增强现实(Augmented Reality,AR)/虚拟现实(Virtual Reality,VR)设备、机器人、可穿戴式设备(Wearable Device)或车载设备(VUE)、行人终端(PUE)等终端侧设备,可穿戴式设备包括:智能手表、手环、耳机、眼镜等。需要说明的是,在本申请实施例并不限定终端的具体类型。
为使本领域技术人员能够更好地理解本申请实施例,先进行如下说明。
在数字音视频编解码技术标准(Audio Video coding Standard,AVS)点云基于几何的点云压缩(Geometry based Point Cloud Coding,G-PCC)编码器框架中,点云的几何信息和属性信息是分开进行编码的。如图1所示为G-PCC基于八叉树的几何编解码和属性编解码。
基于八叉树的几何编码包括:首先对几何信息进行坐标转换,使点云全都包含在一个包围盒(bounding box)中。然后再进行量化,这一步量化主要起到缩放的作用,由于量化取整,使得一部分点的几何信息相同,根据参数来决定是否移除重复点,量化和移除重复点这一过程又被称为体素化过程。接下来,按照广度优先遍历的顺序不断对bounding box进行树划分(八叉树/四叉树/二叉树),对每个节点的占位码进行编码。在基于八叉树的几何码框架中,将包围盒依次划分得到子立方体,对非空的(包含点云中的点)的子立方体继续进行划分,直到划分得到的叶子结点为1×1×1的单位立方体时停止划分,其次对叶子节点中所包含的点数进行编码,最终完成几何八叉树的编码,生成二进制码流。在基于三角面片集(triangle soup,trisoup)的几何信息编码框架中,同样也要先进行八叉树划分,但区别于基于八叉树的几 何信息编码,该方法不需要将点云逐级划分到边长为1×1×1的单位立方体,而是划分到子块(block)边长为W时停止划分,基于每个block中点云的分布所形成的表面,得到该表面与block的十二条边所产生的至多十二个交点(vertex)。依次编码每个block的vertex坐标,生成二进制码流。在基于八叉树的几何解码,解码端按照广度优先遍历的顺序,通过不断解析得到每个节点的占位码,并且依次不断划分节点,直至划分得到1x1x1的单位立方体时停止划分,解析得到每个叶子节点中包含的点数,最终恢复得到几何重构点云信息。
点云的属性编解码则是基于重建后的几何信息来进行的。几何编码完成后,对几何信息进行重建。目前,属性编码主要针对颜色、反射率信息进行。首先判断是否进行颜色空间的转换,若进行颜色空间转换,则将颜色信息从RGB颜色空间转换到YUV(亮度(Y)和色度(U,V))颜色空间。然后,利用原始点云对重建点云进行重着色,使得未编码的属性信息与重建的几何信息对应起来。在属性信息编码中分为两个模块:属性预测与属性变换。属性预测主要采用基于点云莫顿码进行邻居搜索的属性预测方法,该方法通过对点云的属性信息进行预测,得到预测残差,然后对预测残差进行编码。目前主要有两种变换方法,一是依赖于细节层次(Level of Detail,LOD)划分的基于采样率的提升变换,二是直接进行区域自适应分层变换(Region Adaptive Hierarchal Transform,RAHT)变换,这两种方法都会将属性信息从空间域转换到频域,通过变换得到高频系数和低频系数,最后对系数进行量化并编码,生成二进制码流。
下面结合附图,通过一些实施例对本申请实施例提供的点云编码方法进行详细地说明。
如图2所示,本申请实施例提供一种点云编码方法,包括:
步骤201:确定第一点云信息预测列表,所述第一点云信息预测列表包括目标点云中已编码节点的点云信息。
本申请实施例中,上述第一点云信息预测列表中保存有目标点云中已编码节点的点云信息。该已编码节点的点云信息包括已编码节点的几何信息和属性信息。
步骤202:根据所述第一点云信息预测列表,对所述目标点云中的待编码节点进行预测编码。
本申请实施例的点云编码方法,确定第一点云信息预测列表,所述第一点云信息预测列表包括目标点云中已编码节点的点云信息,并基于该第一点云信息预测列表,对目标点云中的待编码节点进行预测编码。该编码方式利用上述第一点云信息预测列表中的已编码节点的点云信息对待编码节点进行预测编码,无需查找邻居节点的占位信息,降低了邻居节点的搜索复杂度,且不需要保存大量的邻居节点的占位信息,有效降低了内存开销,并提高了编码效率。
可选地,所述对所述目标点云中的待编码节点进行预测编码,包括:
在第一参数指示进行预测编码,且第二参数指示在所述目标点云的第M个编码层开启预测编码的情况下,对所述目标点云的第M至第L个编码层对应的待编码节点进行预测编码;
其中,L为所述目标点云所包含的编码层的总数目,L为大于1的正整数,M为小于或等于L的正整数。
本申请实施例中,上述第一参数可以具体为geometry_enable_predict_flag,上述第二参数可以具体为octree_division_end_nodeSizeLog2[3]。具体的,在几何参数集合(Geometry Parameters Set,GPS)中引入第一参数geometry_enable_predict_flag,通过该第一参数来控制是否启动基于多叉树的预测编码方案,并且在开启基于多叉树的预测编码方案时,通过引入第二参数octree_division_end_nodeSizeLog2[3]来确定在多叉树的某一层开始进行预测编码,例如,该第二参数确定在多叉树的第M层开始进行预测编码。
如图3所示,在geometry_enable_predict_flag指示开启预测编码方案的情况下,对目标点云进行划分,得到高比特点云(上述第1个编码层至第M-1个编码层对应的待编码节点)和低比特点云(上述第M个编码层至第L个编码层对应的待编码节点),对上述高比特点云进行多叉树编码,对上述低比特点云进行预测编码,并通过参数geometry_enable_quantizated_flag指示是否对预测编码得到的预测残差进行量化。
可选地,所述对所述目标点云中的待编码节点进行预测编码,包括:
在第三参数指示开启低时延编解码的情况下,对所述目标点云的L个编码层对应的待编码节点进行预测编码;
其中,L为所述目标点云所包含的编码层的总数目,L为大于1的正整数。
本申请实施例中,为了实现点云的低时延编码,在gps中引入第三参数low_latency_geometry_enable_flag,通过该第三参数来控制是否启动低时延编码,并且在启动低时延编码时,上述第二参数为目标点云对应的包围盒大小,即不进行多叉树的编码,直接进行预测编码。
如图4所示,在low_latency_geometry_enable_flag指示开启低时延编码的情况下,划分高低比特点云(此时上述第1个编码层至第L个编码层对应的待编码节点均为划分为低比特点云),在low_latency_geometry_enable_flag指示不开启低时延编码的情况下,判断geometry_enable_predict_flag是否指示开启预测编码方案,在geometry_enable_predict_flag指示开启预测编码方案的情况下,对目标点云进行划分,得到高比特点云(上述第1个编码层至第M-1个编码层对应的待编码节点)和低比特点云(上述第M个编码层至第L个编码层对应的待编码节点),对上述高比特点云进行多叉树编码,对上述低比特点云进行预测编码,并通过参数geometry_enable_quantizated_flag指示是否对预测编码得到的预测残差进行量化。另外,还通过geometry_attribute_contemporary_enable_flag判断是否开启几何信息与属性信息的并行编解码,在启动几何信息与属性信息的并行编解码的情况下,进行属性预测编码,否则,基于重建的几何信息来进行属性预测编码。
另外,当开启低时延编码或解码时,需要在预处理阶段对目标点云按一定方式进行排序(将空间中相邻的点排在相邻的位置上),然后对排序后的点云进行预测编码,当未开启低时延编码或解码时,按照原有的多叉树编码的顺序对低比特点云进行预测编码。
可选地,所述确定第一点云信息预测列表,包括以下至少一项:
在第四参数指示开启几何信息与属性信息并行编码的情况下,确定第一几何信息预测列表和第一属性信息预测列表;
在第四参数指示不开启几何信息与属性信息并行编码的情况下,确定第一几何信息预测列表,并根据重建的几何信息,确定第二属性信息预测列表。
本申请实施例中,为了实现几何信息与属性信息的并行编解码,在序列参数集(Sequence Parameter Set,SPS)中引入第四参数,通过geometry_attribute_contemporary_enable_flag,如图4和图5所示,通过该第四参数来控制是否启动几何信息与属性信息的并行编解码。
当开启几何信息与属性信息的并行编解码时,对属性信息按照相同的方式构建预测列表来对目标点云进行预测编码;当未开启几何信息与属性信息的并行编解码时,先对几何信息进行编码并重建,利用重建点云的几何信息作为辅助信息来构建属性信息的预测列表,并基于属性信息的预测列表对属性信息进行预测编码。
可选地,所述确定第一点云信息预测列表,包括:
构建初始点云信息预测列表,所述初始点云信息预测列表包括N1个先验值,N1为正整数;
根据所述目标点云中已编码节点的点云信息,对所述先验值进行更新,得到所述第一点云信息预测列表。
本申请实施例中,根据目标点云中已编码节点的点云信息,可以对上述N1个先验值进行更新,也可对上述N1个先验值中的部分先验值进行更新。
通过分析点云空间分布可知,针对稀疏点云进行多叉树划分到一定层级时,空间中的点分布较为密集,其信息通常具有相似性,因此,针对这种情况,需要将点云中的待编码点前的已编码点的信息利用一些辅助信息保存到预测列表中,则可通过一定的规则从预测列表中选出合适的值来预测当前点的信息。
可选地,所述根据所述目标点云中已编码节点的点云信息,对所述先验值进行更新,包括:
第一项:在第一已编码节点的点云信息的信息值或预测残差大于第一预设阈值的情况下,将第一先验值更新为当前待编码节点对应的最大预测值,所述第一先验值为所述第一点云信息预测列表中的任意一个先验值,所述第一已编码节点为位于当前待编码节点之前的第K0个已编码节点,K0为正整数;
或者,第二项:将所述第一先验值更新为第二已编码节点的点云信息,所述第二已编码节点为位于所述当前待编码节点之前的第K1个已编码节点,K1为正整数;
或者,第三项:将第一先验值更新为第一目标点云信息,所述第一目标点云信息是根据所述第二已编码节点的点云信息和第三已编码节点的点云信息确定的,所述第三已编码节点为位于所述当前待编码节点之前的第K2个已编码节点,K2为正整数;
或者,第四项:将第一先验值更新为第一目标几何信息,所述第一目标几何信息是根据所述目标点云中的所有已编码节点的几何信息确定的;
或者,第五项:将第一先验值更新为第四已编码节点对应的点云信息,所述第四已编码节点为所述目标点云的目标节点中与当前待编码节点的几何距离最近的节点,所述目标节点为所述目标点云的第1个编码层至第M-1个编码层对应的节点,L为所述目标点云所包含的编码层的总数目,M为所述目标点云中启动预测编码的编码层,L为大于1的正整数,M为小于或等于L的正整数。
具体的,对于上述第一项:在第一已编码节点的点云信息的信息值或预测残差大于第一预设阈值的情况下,将第一先验值更新为当前待编码节点对应的最大预测值,该最大预测值与M相关,具体的,该最大预测值可为2 M-1。如果第一已编码节点的点云信息的信息值或预测残差小于或者等于第一预设阈值,则不对上述第一先验值进行更新。
对于上述第三项,第一目标点云信息可以是对第二已编码节点的点云信息和第三已编码界面的点云信息的加权平均值得到的。
对于上述第四项,所述第一目标几何信息可以是根据所述目标点云中的所有已编码节点的几何信息的平均值确定的,例如,每次编码完N个点的几何信息后,计算N个点的几何信息的均值将其作为上述第一目标几何信息。
下面结合一具体实施例来对上述先验值的更新过程进行说明。
假设第一点云信息预测列表的大小等于4,即包括4个已编码节点的点云信息。首先,构建初始点云信息预测列表,在该初始点云信息预测列表中填写4个先验值,例如,P0、P1、P2和P3。然后利用已编码节点的点云信息来进行更新。其中,上述先验值可以是已编码节点对应的最小预测值,例如0。
对于P0、P1、P2和P3可以采用相同的更新方式进行更新,例如均采用上述第一项更新方式进行更新,也可以采用不同的更新方式进行更新,例如对于P0采用上述第一项更新方式进行更新,对于P1采用上述第二项更新方式进行更新,对于P2采用上述第三项更新方式进行更新,对于P3采用上述第四项更新方式进行更新。
假设P0为上述预测列表中第一个位置的值,P1为上述预测列表中第二个位置的值,P2为上述预测列表中第三个位置的值,P3为上述预测列表中第四个位置的值。具体的,对于P0,如果第一已编码节点的点云信息的信息值或预测残差大于第一预设阈值,则将P0对应的值更新为当前待编码节点对应的最大预测值,否则,不对P0对应的值进行更新;对于P1,如图6所示,将位于当前待编码节点之前的第K1个已编码节点的点云信息插入到P1对应的位置。对于P2,如图7所示,将位于当前待编码节点之前的第K2个已编码节点的点云信息插入到P2对应的位置;对于P3,计算上述P1对应的点云信息和P2对应的点云信息的加权平均值,并将得到的加权平均值插入到P3对应的位置。
需要说明的是,本申请实施例中,当未开启并行编解码时,点云几何信息的预测列表构建过程与开启并行编解码的预测列表构建过程相同。对于点云属性信息的预测列表则可利用重建后的几何信息作为辅助信息来构建并更 新。
可选地,所述根据重建的几何信息,确定第二属性信息预测列表,包括:
确定S1个已编码节点集合,每个已编码节点集合包括至少一个已编码节点,S1为正整数,S1是根据第二属性信息预测列表的大小确定的;
在每个所述已编码节点集合中查找与当前待编码节点的几何距离最近的目标已编码节点;
根据所述目标已编码节点的属性信息,确定第二属性信息预测列表。
本申请实施例中,先构建初始属性信息预测列表(初始化其大小,并填充一些先验值),然后基于目标已编码节点的属性信息,更新所述初始属性信息预测列表,得到第二属性信息预测列表。
具体的,首先设定一个搜索范围(attrSearchRange)。然后将该搜索范围划分为S1个区间(即S1个已编码节点集合),S1是根据第二属性信息预测列表的大小确定的,例如第二属性信息预测列表中包含4个值,则S1为4,第二属性信息预测列表中包含5个值,则S1为5。假设S1为4,上述4个区间分别用attrSearchRange0、attrSearchRange1、attrSearchRange2和attrSearchRange3表示,如图8所示,分别在这四个区间中查找与当前待编码节点的几何空间位置最近的目标已编码节点,并利用其属性信息来更新第二属性信息预测列表。例如,利用在attrSearchRange0中查找到的已编码节点的属性信息来更新第二属性信息预测列表中的第一个值,利用在attrSearchRange1中查找到的已编码节点的属性信息来更新第二属性信息预测列表中的第二个值,利用在attrSearchRange2中查找到的已编码节点的属性信息来更新第二属性信息预测列表中的第三个值,利用在attrSearchRange3中查找到的已编码节点的属性信息来更新第二属性信息预测列表中的第四个值,即每个区间中查找到的已编码节点的属性信息与第二属性信息预测列表中的一个值对应。
作为一种可选地实现方式,所述根据所述第一点云信息预测列表,对所述目标点云中的待编码节点进行预测编码,包括:
根据所述第一点云信息预测列表,确定最优预测模式,其中,所述第一预测列表中的不同点云信息对应不同的预测模式;
根据所述最优预测模式对当前待编码节点进行预测处理,得到所述当前待编码节点对应的预测残差;
分别对所述最优预测模式和所述预测残差进行编码处理。
其中,上述最优预测模式为所述预测列表中的目标点云信息对应的预测模式,所述目标点云信息为所述预测列表中码流估计最小的点云信息。
本申请实施例中,在第一点云信息预测列表选取最优预测模式,基于该最优预测模式对当前待编码节点的点云信息进行预测,得到预测残差,然后分别对最优预测模式和所述当前待编码节点对应的预测残差进行编码。
可选地,对所述最优预测模式进行编码处理,包括:
根据所述目标点云中已编码节点的预测模式,对所述最优预测模式进行编码处理。
这里,首先获取当前待编码节点前的已编码节点的预测模式predMode,并利用predMode作为辅助信息来进行上下文设计,即利用predMode作为当前待编码节点的信息的预测模式编码的上下文,对上述最优预测模式进行编码。
作为另一种可选地实现方式,所述根据所述第一点云信息预测列表,对所述目标点云中的待编码节点进行预测编码,包括:
根据所述第一点云信息预测列表,确定最优预测模式,其中,所述第一预测列表中的不同点云信息对应不同的预测模式;
根据所述最优预测模式对当前待编码节点进行预测处理,得到所述当前待编码节点对应的预测残差;
对所述预测残差进行编码处理。
其中,所述最优预测模式为所述预测列表中的目标点云信息对应的预测模式,所述目标点云信息为所述预测列表中通过已编码点的点云信息选择出来的点云信息。
本申请实施例中最优预测模式的确定方式包括以下两种:
在第一编码情况下,最优预测模式为所述预测列表中的目标点云信息对应的预测模式,所述目标点云信息为所述预测列表中码流估计最小的点云信息。在第二编码情况下,最优预测模式根据前面已编码点的点云信息进行判断得到。
下面结合一个具体实施例来对上面第二编码情况下确定最优预测模式的方式进行详细说明:
设当前预测列表大小为5,则通过前面已编码点的点云信息更新最优预测模式的方式如下所示:
(1)、前一个已编码点的点云重建值与阈值th0进行比较,若大于阈值th0,则选择最优预测模式为1,即选择预测列表中第一个值作为当前待编码点的预测值,否则进行后面的判断。
(2)、前一个已编码点的点云信息预测残差值与阈值th1进行比较,若大于阈值th1,则选择最优预测模式为2,即选择预测列表中第二个值作为当前待编码点的预测值,否则进行后面的判断。
(3)、前面已编码点中的两个点的点云信息重建值的残差与阈值th2进行比较,若大于阈值th2,则选择最优预测模式为3,即选择预测列表中第三个值作为当前待编码点的预测值,否则进行后面的判断。
(4)、前面已编码点中的多个点的点云信息重建值的残差的符号是否相同,若相同,则选择最优预测模式为4,即选择预测列表中第四个值作为当前待编码点的预测值,否则选择最优预测模式为5,即选择预测列表中第五个值作为当前待编码点的预测值。
其中,对于上述第一编码情况,分别对所述最优预测模式和所述预测残差进行编码处理。对于上述第二编码情况,对预测残差进行编码处理。
可选地,所述对所述预测残差进行编码处理,包括:
根据当前待编码节点的最大值和所述最优预测模式对应的点云信息,得到当前待编码节点的预测残差的有效比特位数;
根据所述有效比特位数,对所述预测残差进行编码处理。
这里,当前待编码节点的最大值可根据所述目标点云中开启预测编码的编码层数确定,例如,在所述目标点云的第M个编码层开启预测编码,则当前待编码节点的最大值为2 M-1。在对当前待编码节点的预测残差进行编码处理之前,利用当前待编码节点的最大值和最优预测模式对应的点云信息,计算当前待编码节点的预测残差的有效比特位数,然后根据该有效比特位数,利用现有的有效比特位数编码方法对上述预测残差进行编码。
本申请实施例的点云编码方法,通过建立第一点云信息预测列表并选择最佳预测模式来预测点云信息(几何信息和属性信息),然后利用前面已编码节点的预测模式作为辅助信息设计上下文对当前待编码节点的预测模式进行编码,并根据点云信息的最大值和当前待编码节点的预测值(最优预测模式对应的点云信息)计算当前待编码节点的预测残差的有效比特位数,并基于该有效比特位数来对预测残差进行有效比特位数编码。
本申请实施例的点云编码方法,确定第一点云信息预测列表,所述第一点云信息预测列表包括目标点云中已编码节点的点云信息,并基于该第一点云信息预测列表,对目标点云中的待编码节点进行预测编码。该编码方式利用上述第一点云信息预测列表中的已编码节点的点云信息对待编码节点进行预测编码,无需查找邻居节点的占位信息,降低了邻居节点的搜索复杂度,且不需要保存大量的邻居节点的占位信息,有效降低了内存开销,并提高了编码效率。
如图9所示,本申请实施例还提供了一种点云解码方法,包括:
步骤901:对目标码流进行解码处理,得到所述目标码流中待解码节点的解码信息,所述解码信息包括待解码节点的预测残差和待解码节点的预测模式,或者,所述解码信息包括待解码节点的预测残差,所述目标码流是对目标点云中的节点进行编码处理后得到的。
步骤902:确定第二点云信息预测列表,所述第二点云信息预测列表包括目标码流中已解码节点的点云信息。
其中,已解码节点的点云信息包括已解码节点的几何信息和属性信息。
步骤903:根据所述第二点云信息预测列表和所述解码信息,获取所述待解码节点对应的点云信息。
这里,对于上述第一编码情况,解码端根据解码出来的预测模式和预测残差,并利用第二点云信息预测列表对待解码节点的点云信息进行重建,得到重建后的点云信息。具体的,根据解码出来的预测模式在第二点云信息预测列表中选取相应的预测值,并基于该预测值、预测残差对点云的信息进行重建。对于上述第二编码情况,解码端根据解码出来的预测残差、通过已编码点的点云信息推断出来的预测模式以及第二点云信息预测列表对待解码节点的点云信息进行重建,得到重建后的点云信息。
本申请实施例的点云解码方法,对目标码流进行解码处理,得到所述目标码流中待解码节点的解码信息,所述解码信息包括待解码节点的预测残差和待解码节点的预测模式,或者,所述解码信息包括待解码节点的预测残差;确定第二点云信息预测列表;根据所述第二点云信息预测列表和所述解码信息,获取所述待解码节点对应的点云信息。这样,无需查找邻居节点的相关信息,降低了邻居节点的搜索复杂度,且不需要保存大量的邻居节点的信息,有效降低了内存开销,并提高了解码效率。
可选地,所述对目标码流进行解码处理,包括:
在第一参数指示进行预测解码,且第二参数指示在所述目标码流的第M个解码层开启预测解码的情况下,对所述目标码流的第M至第L个解码层对应的待解码节点进行解码处理;
其中,L为所述目标码流所包含的解码层的总数目,L为大于1的正整数,M为小于或等于L的正整数。
可选地,所述对目标码流进行解码处理,包括:
在第三参数指示开启低时延解码的情况下,对所述目标码流的L个编码层对应的待解码节点进行解码处理;
其中,L为所述目标码流所包含的解码层的总数目,L为大于1的正整数。
可选地,所述确定第二点云信息预测列表,包括以下至少一项:
在第四参数指示开启几何信息与属性信息并行解码的情况下,确定第二几何信息预测列表和第二属性信息预测列表;
在第四参数指示不开启几何信息与属性信息并行解码的情况下,确定第二几何信息预测列表,并根据重建的几何信息,确定第三属性信息预测列表。
可选地,所述确定第二点云信息预测列表,包括:
构建初始点云信息预测列表,所述初始点云信息预测列表包括N2个先验值,N2为正整数;
根据所述目标码流中已解码节点的点云信息,对所述先验值进行更新,得到所述第二点云信息预测列表。
可选地,所述根据所述目标码流中已解码节点的点云信息,对所述先验值进行更新,包括:
在第一已解码节点的点云信息的信息值或预测残差大于第二预设阈值的情况下,将第二先验值更新为当前待解码节点对应的最大预测值,所述第二先验值为所述第二点云信息预测列表中的任意一个先验值,所述第一已解码节点为位于当前待解码节点之前的第K3个已解码节点,K3为正整数;
或者,将所述第一先验值更新为第二已解码节点的点云信息,所述第二已编码节点为位于所述当前待解码节点之前的第K4个已解码节点,K4为正整数;
或者,将第一先验值更新为第二目标点云信息,所述第二目标点云信息是根据所述第二已解码节点的点云信息和第三已解码节点的点云信息确定的,所述第三已解码节点为位于所述当前待解码节点之前的第K5个已解码节点,K5为正整数;
或者,将第一先验值更新为第二目标几何信息,所述第二目标几何信息是根据所述目标点云中的所有已解码节点的几何信息确定的;
或者,将第一先验值更新为第四已解码节点对应的点云信息,所述第四已解码节点为所述目标点云的目标节点中与当前待解码节点的几何距离最近 的节点,所述目标节点为所述目标码流的第1个解码层至第M-1个解码层对应的节点,L为所述目标码流所包含的解码层的总数目,M为所述目标码流中启动预测解码的解码层,L为大于1的正整数,M为小于或等于L的正整数。
需要说明的是,上述第二点云信息预测列表的建立和更新过程与上述第一点云信息预测列表的建立和更新过程相同,此处不再赘述。
可选地,所述根据重建的几何信息,确定第三属性信息预测列表,包括:
确定S2个已解码节点集合,每个已解码节点集合包括至少一个已编码节点,S2为正整数,S2是根据第三属性信息预测列表的大小确定的;
在每个所述已解码节点集合中查找与当前待解码节点的几何距离最近的目标已解码节点;
根据所述目标已解码节点的属性信息,确定第三属性信息预测列表。
需要说明的是,本申请实施例的点云解码方法是与上述点云编码方法相对应的方法,具体实现过程与上述点云编码方法的实现过程类似,此处不再赘述。
本申请实施例的点云解码方法,对目标码流进行解码处理,得到所述目标码流中待解码节点的预测残差和待解码节点的预测模式;确定第二点云信息预测列表;根据所述第二点云信息预测列表、所述预测残差和预测模式,获取所述待解码节点对应的点云信息。这样,无需查找邻居节点的相关信息,降低了邻居节点的搜索复杂度,且不需要保存大量的邻居节点的信息,有效降低了内存开销,并提高了解码效率。
需要说明的是,本申请实施例提供的点云编码方法,执行主体可以为点云编码装置,或者,该点云编码装置中的用于执行点云编码法的控制模块。本申请实施例中以点云编码装置执行点云编码方法为例,说明本申请实施例提供的点云编码装置。
如图10所示,本申请实施例提供了一种点云编码装置1000,包括:
第一确定模块1001,用于确定第一点云信息预测列表,所述第一点云信 息预测列表包括目标点云中已编码节点的点云信息;
第一处理模块1002,用于根据所述第一点云信息预测列表,对所述目标点云中的待编码节点进行预测编码。
可选地,所述第一处理模块用于在第一参数指示进行预测编码,且第二参数指示在所述目标点云的第M个编码层开启预测编码的情况下,对所述目标点云的第M至第L个编码层对应的待编码节点进行预测编码;
其中,L为所述目标点云所包含的编码层的总数目,L为大于1的正整数,M为小于或等于L的正整数。
可选地,所述第一处理模块用于在第三参数指示开启低时延编码的情况下,对所述目标点云的L个编码层对应的待编码节点进行预测编码;
其中,L为所述目标点云所包含的编码层的总数目,L为大于1的正整数。
可选地,所述第一确定模块用于执行以下至少一项:
在第四参数指示开启几何信息与属性信息并行编码的情况下,确定第一几何信息预测列表和第一属性信息预测列表;
在第四参数指示不开启几何信息与属性信息并行编码的情况下,确定第一几何信息预测列表,并根据重建的几何信息,确定第二属性信息预测列表。
可选地,所述第一确定模块包括:
第一构建子模块,用于构建初始点云信息预测列表,所述初始点云信息预测列表包括N1个先验值,N1为正整数;
第一更新子模块,用于根据所述目标点云中已编码节点的点云信息,对所述先验值进行更新,得到所述第一点云信息预测列表。
可选地,所述第一更新子模块用于在第一已编码节点的点云信息的信息值或预测残差大于第一预设阈值的情况下,将第一先验值更新为当前待编码节点对应的最大预测值,所述第一先验值为所述第一点云信息预测列表中的任意一个先验值,所述第一已编码节点为位于当前待编码节点之前的第K0个已编码节点,K0为正整数;
或者,将所述第一先验值更新为第二已编码节点的点云信息,所述第二已编码节点为位于所述当前待编码节点之前的第K1个已编码节点,K1为正整数;
或者,将第一先验值更新为第一目标点云信息,所述第一目标点云信息是根据所述第二已编码节点的点云信息和第三已编码节点的点云信息确定的,所述第三已编码节点为位于所述当前待编码节点之前的第K2个已编码节点,K2为正整数;
或者,将第一先验值更新为第一目标几何信息,所述第一目标几何信息是根据所述目标点云中的所有已编码节点的几何信息确定的;
或者,将第一先验值更新为第四已编码节点对应的点云信息,所述第四已编码节点为所述目标点云的目标节点中与当前待编码节点的几何距离最近的节点,所述目标节点为所述目标点云的第1个编码层至第M-1个编码层对应的节点,L为所述目标点云所包含的编码层的总数目,M为所述目标点云中启动预测编码的编码层,L为大于1的正整数,M为小于或等于L的正整数。
可选地,所述第一确定模块包括:
第一确定子模块,用于确定S1个已编码节点集合,每个已编码节点集合包括至少一个已编码节点,S1为正整数,S1是根据第二属性信息预测列表的大小确定的;
第一选取子模块,用于在每个所述已编码节点集合中查找与当前待编码节点的几何距离最近的目标已编码节点;
第二确定子模块,用于根据所述目标已编码节点的属性信息,确定第二属性信息预测列表。
可选地,所述第一处理模块包括:
第三确定子模块,用于根据所述第一点云信息预测列表,确定最优预测模式,其中,所述第一预测列表中的不同点云信息对应不同的预测模式;
第四确定子模块,用于根据所述最优预测模式对当前待编码节点进行预 测处理,得到所述当前待编码节点对应的预测残差;
编码子模块,用于分别对所述最优预测模式和所述预测残差进行编码处理。
可选地,所述最优预测模式为所述预测列表中的目标点云信息对应的预测模式,所述目标点云信息为所述预测列表中码流估计最小的点云信息。
可选地,所述编码子模块用于根据所述目标点云中已编码节点的预测模式,对所述最优预测模式进行编码处理。
可选地,所述第一处理模块包括:
第七确定子模块,用于根据所述第一点云信息预测列表,确定最优预测模式,其中,所述第一预测列表中的不同点云信息对应不同的预测模式;
第八确定子模块,用于根据所述最优预测模式对当前待编码节点进行预测处理,得到所述当前待编码节点对应的预测残差;
第一编码子模块,用于对所述预测残差进行编码处理。
可选地,所述最优预测模式为所述预测列表中的目标点云信息对应的预测模式,所述目标点云信息为所述预测列表中通过已编码点的点云信息选择出来的点云信息。
可选地,所述编码子模块包括:
第一获取单元,用于根据当前待编码节点的最大值和所述最优预测模式对应的点云信息,得到当前待编码节点的预测残差的有效比特位数;
编码单元,用于根据所述有效比特位数,对所述预测残差进行编码处理。
本申请实施例中,确定第一点云信息预测列表,所述第一点云信息预测列表包括目标点云中已编码节点的点云信息,并基于该第一点云信息预测列表,对目标点云中的待编码节点进行预测编码。该编码方式利用上述第一点云信息预测列表中的已编码节点的点云信息对待编码节点进行预测编码,无需查找邻居节点的占位信息,降低了邻居节点的搜索复杂度,且不需要保存大量的邻居节点的占位信息,有效降低了内存开销,并提高了编码效率。
本申请实施例中的点云编码装置可以是装置,具有操作系统的装置或电 子设备,也可以是终端中的部件、集成电路、或芯片。该装置或电子设备可以是移动终端,也可以为非移动终端。
本申请实施例提供的点云编码装置能够实现图2至图8方法实施例实现的各个过程,并达到相同的技术效果,为避免重复,这里不再赘述。
可选的,如图11所示,本申请实施例还提供了一种点云编码装置,包括处理器1101,存储器1102,存储在存储器1102上并可在所述处理器1101上运行的程序或指令,该程序或指令被处理器1101执行时实现上述点云编码方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本申请实施例还提供了一种点云编码装置,包括处理器和通信接口,处理器用于:确定第一点云信息预测列表,所述第一点云信息预测列表包括目标点云中已编码节点的点云信息;根据所述第一点云信息预测列表,对所述目标点云中的待编码节点进行预测编码。
图12为实现本申请实施例的一种点云编码处理装置的硬件结构示意图,该点云编码处理装置包括但不限于:射频单元1201、网络模块1202、音频输出单元1203、输入单元1204、传感器1205、显示单元1206、用户输入单元1207、接口单元1208、存储器1209、以及处理器1210等中的至少部分部件。
本领域技术人员可以理解,点云编码处理装置1200还可以包括给各个部件供电的电源(比如电池),电源可以通过电源管理系统与处理器1210逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。图12中示出的结构并不构成对点云编码处理装置的限定,点云编码处理装置可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置,在此不再赘述。
应理解的是,本申请实施例中,输入单元1204可以包括图形处理器(Graphics Processing Unit,GPU)12041和麦克风12042,图形处理器12041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。显示单元1206可包括显示面板12061, 可以采用液晶显示器、有机发光二极管等形式来配置显示面板12061。用户输入单元1207包括触控面板12071以及其他输入设备12072。触控面板12071,也称为触摸屏。触控面板12071可包括触摸检测装置和触摸控制器两个部分。其他输入设备12072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
本申请实施例中,通常,射频单元1201包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。
存储器1209可用于存储软件程序或指令以及各种数据。存储器1209可主要包括存储程序或指令区和存储数据区,其中,存储程序或指令区可存储操作系统、至少一个功能所需的应用程序或指令(比如声音播放功能、图像播放功能等)等。此外,存储器1209可以包括高速随机存取存储器,还可以包括非易失性存储器,其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。
处理器1210可包括一个或多个处理单元;可选的,处理器1210可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序或指令等,调制解调处理器主要处理无线通信,如基带处理器。可以理解的是,上述调制解调处理器也可以不集成到处理器1210中。
所述处理器1210,用于确定第一点云信息预测列表,所述第一点云信息预测列表包括目标点云中已编码节点的点云信息;根据所述第一点云信息预测列表,对所述目标点云中的待编码节点进行预测编码。
可选地,所述处理器1210,用于在第一参数指示进行预测编码,且第二参数指示在所述目标点云的第M个编码层开启预测编码的情况下,对所述目标点云的第M至第L个编码层对应的待编码节点进行预测编码;
其中,L为所述目标点云所包含的编码层的总数目,L为大于1的正整 数,M为小于或等于L的正整数。
可选地,所述处理器1210,用于在第三参数指示开启低时延编码的情况下,对所述目标点云的L个编码层对应的待编码节点进行预测编码;
其中,L为所述目标点云所包含的编码层的总数目,L为大于1的正整数。
可选地,所述处理器1210,用于执行以下至少一项:
在第四参数指示开启几何信息与属性信息并行编码的情况下,确定第一几何信息预测列表和第一属性信息预测列表;
在第四参数指示不开启几何信息与属性信息并行编码的情况下,确定第一几何信息预测列表,并根据重建的几何信息,确定第二属性信息预测列表。
可选地,所述处理器1210,用于构建初始点云信息预测列表,所述初始点云信息预测列表包括N1个先验值,N1为正整数;根据所述目标点云中已编码节点的点云信息,对所述先验值进行更新,得到所述第一点云信息预测列表。
可选地,所述处理器1210,用于在第一已编码节点的点云信息的信息值或预测残差大于第一预设阈值的情况下,将第一先验值更新为当前待编码节点对应的最大预测值,所述第一先验值为所述第一点云信息预测列表中的任意一个先验值,所述第一已编码节点为位于当前待编码节点之前的第K0个已编码节点,K0为正整数;
或者,将所述第一先验值更新为第二已编码节点的点云信息,所述第二已编码节点为位于所述当前待编码节点之前的第K1个已编码节点,K1为正整数;
或者,将第一先验值更新为第一目标点云信息,所述第一目标点云信息是根据所述第二已编码节点的点云信息和第三已编码节点的点云信息确定的,所述第三已编码节点为位于所述当前待编码节点之前的第K2个已编码节点,K2为正整数;
或者,将第一先验值更新为第一目标几何信息,所述第一目标几何信息 是根据所述目标点云中的所有已编码节点的几何信息确定的;
或者,将第一先验值更新为第四已编码节点对应的点云信息,所述第四已编码节点为所述目标点云的目标节点中与当前待编码节点的几何距离最近的节点,所述目标节点为所述目标点云的第1个编码层至第M-1个编码层对应的节点,L为所述目标点云所包含的编码层的总数目,M为所述目标点云中启动预测编码的编码层,L为大于1的正整数,M为小于或等于L的正整数。
可选地,所述处理器1210,用于确定S1个已编码节点集合,每个已编码节点集合包括至少一个已编码节点,S1为正整数,S1是根据第二属性信息预测列表的大小确定的;
在每个所述已编码节点集合中查找与当前待编码节点的几何距离最近的目标已编码节点;
根据所述目标已编码节点的属性信息,确定第二属性信息预测列表。
可选地,所述处理器1210,用于根据所述第一点云信息预测列表,确定最优预测模式,其中,所述第一预测列表中的不同点云信息对应不同的预测模式;
根据所述最优预测模式对当前待编码节点进行预测处理,得到所述当前待编码节点对应的预测残差;
分别对所述最优预测模式和所述预测残差进行编码处理。
可选地,所述最优预测模式为所述预测列表中的目标点云信息对应的预测模式,所述目标点云信息为所述预测列表中码流估计最小的点云信息。
可选地,所述处理器1210,用于根据所述目标点云中已编码节点的预测模式,对所述最优预测模式进行编码处理。
可选地,所述处理器1210,用于根据所述第一点云信息预测列表,确定最优预测模式,其中,所述第一预测列表中的不同点云信息对应不同的预测模式;根据所述最优预测模式对当前待编码节点进行预测处理,得到所述当前待编码节点对应的预测残差;对所述预测残差进行编码处理。
可选地,所述最优预测模式为所述预测列表中的目标点云信息对应的预测模式,所述目标点云信息为所述预测列表中通过已编码点的点云信息选择出来的点云信息。
可选地,所述处理器1210,用于根据当前待编码节点的最大值和所述最优预测模式对应的点云信息,得到当前待编码节点的预测残差的有效比特位数;
根据所述有效比特位数,对所述预测残差进行编码处理。
本申请实施例中,确定第一点云信息预测列表,所述第一点云信息预测列表包括目标点云中已编码节点的点云信息,并基于该第一点云信息预测列表,对目标点云中的待编码节点进行预测编码。该编码方式利用上述第一点云信息预测列表中的已编码节点的点云信息对待编码节点进行预测编码,无需查找邻居节点的占位信息,降低了邻居节点的搜索复杂度,且不需要保存大量的邻居节点的占位信息,有效降低了内存开销,并提高了编码效率。
需要说明的是,本申请实施例提供的点云解码方法,执行主体可以为点云解码装置,或者,该点云解码装置中的用于执行点云解码方法的控制模块。本申请实施例中以点云解码装置执行点云解码处理方法为例,说明本申请实施例提供的点云解码装置。
如图13所示,本申请实施例提供了一种点云解码装置1300,包括:
第二处理模块1301,用于对目标码流进行解码处理,得到所述目标码流中待解码节点的解码信息,所述解码信息包括待解码节点的预测残差和待解码节点的预测模式,或者,所述解码信息包括待解码节点的预测残差,所述目标码流是对目标点云中的节点进行编码处理后得到的;
第二确定模块1302,用于确定第二点云信息预测列表,所述第二点云信息预测列表包括目标码流中已解码节点的点云信息;
第一获取模块1303,用于根据所述第二点云信息预测列表和所述解码信息,获取所述待解码节点对应的点云信息。
可选地,所述第二处理模块用于在第一参数指示进行预测解码,且第二 参数指示在所述目标码流的第M个解码层开启预测解码的情况下,对所述目标码流的第M至第L个解码层对应的待解码节点进行解码处理;
其中,L为所述目标码流所包含的解码层的总数目,L为大于1的正整数,M为小于或等于L的正整数。
可选地,所述第二处理模块用于在第三参数指示开启低时延解码的情况下,对所述目标码流的L个编码层对应的待解码节点进行解码处理;
其中,L为所述目标码流所包含的解码层的总数目,L为大于1的正整数。
可选地,所述第二确定模块用于执行以下至少一项:
在第四参数指示开启几何信息与属性信息并行解码的情况下,确定第二几何信息预测列表和第二属性信息预测列表;
在第四参数指示不开启几何信息与属性信息并行解码的情况下,确定第二几何信息预测列表,并根据重建的几何信息,确定第三属性信息预测列表。
可选地,所述第二确定模块包括:
第二构建子模块,用于构建初始点云信息预测列表,所述初始点云信息预测列表包括N2个先验值,N2为正整数;
第二更新子模块,用于根据所述目标码流中已解码节点的点云信息,对所述先验值进行更新,得到所述第二点云信息预测列表。
可选地,所述第二更新子模块用于在第一已解码节点的点云信息的信息值或预测残差大于第二预设阈值的情况下,将第二先验值更新为当前待解码节点对应的最大预测值,所述第二先验值为所述第二点云信息预测列表中的任意一个先验值,所述第一已解码节点为位于当前待解码节点之前的第K3个已解码节点,K3为正整数;
或者,将所述第一先验值更新为第二已解码节点的点云信息,所述第二已编码节点为位于所述当前待解码节点之前的第K4个已解码节点,K4为正整数;
或者,将第一先验值更新为第二目标点云信息,所述第二目标点云信息 是根据所述第二已解码节点的点云信息和第三已解码节点的点云信息确定的,所述第三已解码节点为位于所述当前待解码节点之前的第K5个已解码节点,K5为正整数;
或者,将第一先验值更新为第二目标几何信息,所述第二目标几何信息是根据所述目标点云中的所有已解码节点的几何信息确定的;
或者,将第一先验值更新为第四已解码节点对应的点云信息,所述第四已解码节点为所述目标点云的目标节点中与当前待解码节点的几何距离最近的节点,所述目标节点为所述目标码流的第1个解码层至第M-1个解码层对应的节点,L为所述目标码流所包含的解码层的总数目,M为所述目标码流中启动预测解码的解码层,L为大于1的正整数,M为小于或等于L的正整数。
可选地,所述第二确定模块包括:
第五确定子模块,用于确定S2个已解码节点集合,每个已解码节点集合包括至少一个已编码节点,S2为正整数,S2是根据第三属性信息预测列表的大小确定的;
第二选取子模块,用于在每个所述已解码节点集合中查找与当前待解码节点的几何距离最近的目标已解码节点;
第六确定子模块,用于根据所述目标已解码节点的属性信息,确定第三属性信息预测列表。
本申请实施例中,对目标码流进行解码处理,得到所述目标码流中待解码节点的解码信息,所述解码信息包括待解码节点的预测残差和待解码节点的预测模式,或者,所述解码信息包括待解码节点的预测残差;确定第二点云信息预测列表;根据所述第二点云信息预测列表和所述解码信息,获取所述待解码节点对应的点云信息。这样,无需查找邻居节点的相关信息,降低了邻居节点的搜索复杂度,且不需要保存大量的邻居节点的信息,有效降低了内存开销,并提高了解码效率。
本申请实施例中的点云解码装置可以是装置,具有操作系统的装置或电 子设备,也可以是终端中的部件、集成电路、或芯片。该装置或电子设备可以是移动终端,也可以为非移动终端。
本申请实施例提供的点云解码装置能够实现图9所示方法实施例实现的各个过程,并达到相同的技术效果,为避免重复,这里不再赘述。
可选的,本申请实施例还提供了一种点云解码装置(其结构示意可参见图11),包括处理器,存储器,存储在存储器上并可在所述处理器上运行的程序或指令,该程序或指令被处理器执行时实现上述点云解码方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本申请实施例还提供了一种点云解码装置,包括处理器和通信接口,处理器用于:对目标码流进行解码处理,得到所述目标码流中待解码节点的解码信息,所述解码信息包括待解码节点的预测残差和待解码节点的预测模式,或者,所述解码信息包括待解码节点的预测残差,所述目标码流是对目标点云中的节点进行编码处理后得到的;确定第二点云信息预测列表,所述第二点云信息预测列表包括目标码流中已解码节点的点云信息;根据所述第二点云信息预测列表和所述解码信息,获取所述待解码节点对应的点云信息。
本申请实施例还提供了一种点云解码装置,其硬件结构示意图可参见图12,该点云解码装置包括但不限于:射频单元、网络模块、音频输出单元、输入单元、传感器、显示单元、用户输入单元、接口单元、存储器、以及处理器等中的至少部分部件。
本领域技术人员可以理解,点云解码装置还可以包括给各个部件供电的电源(比如电池),电源可以通过电源管理系统与处理器逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。图12中示出的结构并不构成对点云解码处理装置的限定,点云解码处理装置可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置,在此不再赘述。
应理解的是,本申请实施例中,输入单元可以包括图形处理器(Graphics Processing Unit,GPU)和麦克风,图形处理器对在视频捕获模式或图像捕获 模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。显示单元可包括显示面板,可以采用液晶显示器、有机发光二极管等形式来配置显示面板。用户输入单元包括触控面板以及其他输入设备。触控面板,也称为触摸屏。触控面板可包括触摸检测装置和触摸控制器两个部分。其他输入设备可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
本申请实施例中,通常,射频单元包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。
存储器可用于存储软件程序或指令以及各种数据。存储器可主要包括存储程序或指令区和存储数据区,其中,存储程序或指令区可存储操作系统、至少一个功能所需的应用程序或指令(比如声音播放功能、图像播放功能等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。
处理器可包括一个或多个处理单元;可选的,处理器可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序或指令等,调制解调处理器主要处理无线通信,如基带处理器。可以理解的是,上述调制解调处理器也可以不集成到处理器中。
所述处理器,用于对目标码流进行解码处理,得到所述目标码流中待解码节点的解码信息,所述解码信息包括待解码节点的预测残差和待解码节点的预测模式,或者,所述解码信息包括待解码节点的预测残差,所述目标码流是对目标点云中的节点进行编码处理后得到的;确定第二点云信息预测列表,所述第二点云信息预测列表包括目标码流中已解码节点的点云信息;根据所述第二点云信息预测列表和所述解码信息,获取所述待解码节点对应的 点云信息。
可选地,所述处理器,还用于在第一参数指示进行预测解码,且第二参数指示在所述目标码流的第M个解码层开启预测解码的情况下,对所述目标码流的第M至第L个解码层对应的待解码节点进行解码处理;
其中,L为所述目标码流所包含的解码层的总数目,L为大于1的正整数,M为小于或等于L的正整数。
可选地,所述处理器,还用于在第三参数指示开启低时延解码的情况下,对所述目标码流的L个编码层对应的待解码节点进行解码处理;
其中,L为所述目标码流所包含的解码层的总数目,L为大于1的正整数。
可选地,所述处理器,还用于执行以下至少一项:
在第四参数指示开启几何信息与属性信息并行解码的情况下,确定第二几何信息预测列表和第二属性信息预测列表;
在第四参数指示不开启几何信息与属性信息并行解码的情况下,确定第二几何信息预测列表,并根据重建的几何信息,确定第三属性信息预测列表。
可选地,所述处理器,还用于构建初始点云信息预测列表,所述初始点云信息预测列表包括N2个先验值,N2为正整数;根据所述目标码流中已解码节点的点云信息,对所述先验值进行更新,得到所述第二点云信息预测列表。
可选地,所述处理器,还用于在第一已解码节点的点云信息的信息值或预测残差大于第二预设阈值的情况下,将第二先验值更新为当前待解码节点对应的最大预测值,所述第二先验值为所述第二点云信息预测列表中的任意一个先验值,所述第一已解码节点为位于当前待解码节点之前的第K3个已解码节点,K3为正整数;
或者,将所述第一先验值更新为第二已解码节点的点云信息,所述第二已编码节点为位于所述当前待解码节点之前的第K4个已解码节点,K4为正整数;
或者,将第一先验值更新为第二目标点云信息,所述第二目标点云信息是根据所述第二已解码节点的点云信息和第三已解码节点的点云信息确定的,所述第三已解码节点为位于所述当前待解码节点之前的第K5个已解码节点,K5为正整数;
或者,将第一先验值更新为第二目标几何信息,所述第二目标几何信息是根据所述目标点云中的所有已解码节点的几何信息确定的;
或者,将第一先验值更新为第四已解码节点对应的点云信息,所述第四已解码节点为所述目标点云的目标节点中与当前待解码节点的几何距离最近的节点,所述目标节点为所述目标码流的第1个解码层至第M-1个解码层对应的节点,L为所述目标码流所包含的解码层的总数目,M为所述目标码流中启动预测解码的解码层,L为大于1的正整数,M为小于或等于L的正整数。
可选地,所述处理器,还用于确定S2个已解码节点集合,每个已解码节点集合包括至少一个已编码节点,S2为正整数,S2是根据第三属性信息预测列表的大小确定的;
在每个所述已解码节点集合中查找与当前待解码节点的几何距离最近的目标已解码节点;
根据所述目标已解码节点的属性信息,确定第三属性信息预测列表。
本申请实施例的点云解码装置,对目标码流进行解码处理,得到所述目标码流中待解码节点的解码信息,所述解码信息包括待解码节点的预测残差和待解码节点的预测模式,或者,所述解码信息包括待解码节点的预测残差;确定第二点云信息预测列表;根据所述第二点云信息预测列表和所述解码信息,获取所述待解码节点对应的点云信息。这样,无需查找邻居节点的相关信息,降低了邻居节点的搜索复杂度,且不需要保存大量的邻居节点的信息,有效降低了内存开销,并提高了解码效率。
本申请实施例还提供一种可读存储介质,所述可读存储介质上存储有程序或指令,所述存储介质可以是易失的或非易失的,该程序或指令被处理器 执行时实现上述点云编码方法或点云解码方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
其中,所述处理器为上述实施例中所述的点云编码装置或点云解码装置中的处理器。所述可读存储介质,包括计算机可读存储介质,如计算机只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等。
本申请实施例另提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现上述点云解码方法或点云编码方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
应理解,本申请实施例提到的芯片还可以称为系统级芯片,系统芯片,芯片系统或片上系统芯片等。
本申请实施例还提供一种计算机程序产品,所述计算机程序产品被存储在非瞬态的存储介质中,所述计算机程序产品被至少一个处理器执行以实现上述点云解码方法或点云编码方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本申请实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。

Claims (28)

  1. 一种点云编码方法,包括:
    确定第一点云信息预测列表,所述第一点云信息预测列表包括目标点云中已编码节点的点云信息;
    根据所述第一点云信息预测列表,对所述目标点云中的待编码节点进行预测编码。
  2. 根据权利要求1所述的方法,其中,所述对所述目标点云中的待编码节点进行预测编码,包括:
    在第一参数指示进行预测编码,且第二参数指示在所述目标点云的第M个编码层开启预测编码的情况下,对所述目标点云的第M至第L个编码层对应的待编码节点进行预测编码;
    其中,L为所述目标点云所包含的编码层的总数目,L为大于1的正整数,M为小于或等于L的正整数。
  3. 根据权利要求1所述的方法,其中,所述对所述目标点云中的待编码节点进行预测编码,包括:
    在第三参数指示开启低时延编码的情况下,对所述目标点云的L个编码层对应的待编码节点进行预测编码;
    其中,L为所述目标点云所包含的编码层的总数目,L为大于1的正整数。
  4. 根据权利要求1所述的方法,其中,所述确定第一点云信息预测列表包括至少一项:
    在第四参数指示开启几何信息与属性信息并行编码的情况下,确定第一几何信息预测列表和第一属性信息预测列表;
    在第四参数指示不开启几何信息与属性信息并行编码的情况下,确定第一几何信息预测列表,并根据重建的几何信息,确定第二属性信息预测列表。
  5. 根据权利要求1所述的方法,其中,所述确定第一点云信息预测列表, 包括:
    构建初始点云信息预测列表,所述初始点云信息预测列表包括N1个先验值,N1为正整数;
    根据所述目标点云中已编码节点的点云信息,对所述先验值进行更新,得到所述第一点云信息预测列表。
  6. 根据权利要求5所述的方法,其中,所述根据所述目标点云中已编码节点的点云信息,对所述先验值进行更新,包括:
    在第一已编码节点的点云信息的信息值或预测残差大于第一预设阈值的情况下,将第一先验值更新为当前待编码节点对应的最大预测值,所述第一先验值为所述第一点云信息预测列表中的任意一个先验值,所述第一已编码节点为位于当前待编码节点之前的第K0个已编码节点,K0为正整数;
    或者,将所述第一先验值更新为第二已编码节点的点云信息,所述第二已编码节点为位于所述当前待编码节点之前的第K1个已编码节点,K1为正整数;
    或者,将第一先验值更新为第一目标点云信息,所述第一目标点云信息是根据所述第二已编码节点的点云信息和第三已编码节点的点云信息确定的,所述第三已编码节点为位于所述当前待编码节点之前的第K2个已编码节点,K2为正整数;
    或者,将第一先验值更新为第一目标几何信息,所述第一目标几何信息是根据所述目标点云中的所有已编码节点的几何信息确定的;
    或者,将第一先验值更新为第四已编码节点对应的点云信息,所述第四已编码节点为所述目标点云的目标节点中与当前待编码节点的几何距离最近的节点,所述目标节点为所述目标点云的第1个编码层至第M-1个编码层对应的节点,L为所述目标点云所包含的编码层的总数目,M为所述目标点云中启动预测编码的编码层,L为大于1的正整数,M为小于或等于L的正整数。
  7. 根据权利要求4所述的方法,其中,所述根据重建的几何信息,确定 第二属性信息预测列表,包括:
    确定S1个已编码节点集合,每个已编码节点集合包括至少一个已编码节点,S1为正整数,S1是根据第二属性信息预测列表的大小确定的;
    在每个所述已编码节点集合中查找与当前待编码节点的几何距离最近的目标已编码节点;
    根据所述目标已编码节点的属性信息,确定第二属性信息预测列表。
  8. 根据权利要求1所述的方法,其中,所述根据所述第一点云信息预测列表,对所述目标点云中的待编码节点进行预测编码,包括:
    根据所述第一点云信息预测列表,确定最优预测模式,其中,所述第一点云信息预测列表中的不同点云信息对应不同的预测模式;
    根据所述最优预测模式对当前待编码节点进行预测处理,得到所述当前待编码节点对应的预测残差;
    分别对所述最优预测模式和所述预测残差进行编码处理。
  9. 根据权利要求8所述的方法,其中,所述最优预测模式为所述第一点云信息预测列表中的目标点云信息对应的预测模式,所述目标点云信息为所述第一点云信息预测列表中码流估计最小的点云信息。
  10. 根据权利要求8所述的方法,其中,对所述最优预测模式进行编码处理,包括:
    根据所述目标点云中已编码节点的预测模式,对所述最优预测模式进行编码处理。
  11. 根据权利要求1所述的方法,其中,所述根据所述第一点云信息预测列表,对所述目标点云中的待编码节点进行预测编码,包括:
    根据所述第一点云信息预测列表,确定最优预测模式,其中,所述第一点云信息预测列表中的不同点云信息对应不同的预测模式;
    根据所述最优预测模式对当前待编码节点进行预测处理,得到所述当前待编码节点对应的预测残差;
    对所述预测残差进行编码处理。
  12. 根据权利要求11所述的方法,其中,所述最优预测模式为所述第一点云信息预测列表中的目标点云信息对应的预测模式,所述目标点云信息为所述第一点云信息预测列表中通过已编码点的点云信息选择出来的点云信息。
  13. 根据权利要求8或11所述的方法,其中,所述对所述预测残差进行编码处理,包括:
    根据当前待编码节点的最大值和所述最优预测模式对应的点云信息,得到当前待编码节点的预测残差的有效比特位数;
    根据所述有效比特位数,对所述预测残差进行编码处理。
  14. 一种点云解码方法,其中,包括:
    对目标码流进行解码处理,得到所述目标码流中待解码节点的解码信息,所述解码信息包括待解码节点的预测残差和待解码节点的预测模式,或者,所述解码信息包括待解码节点的预测残差,所述目标码流是对目标点云中的节点进行编码处理后得到的;
    确定第二点云信息预测列表,所述第二点云信息预测列表包括目标码流中已解码节点的点云信息;
    根据所述第二点云信息预测列表和所述解码信息,获取所述待解码节点对应的点云信息。
  15. 根据权利要求14所述的方法,其中,所述对目标码流进行解码处理,包括:
    在第一参数指示进行预测解码,且第二参数指示在所述目标码流的第M个解码层开启预测解码的情况下,对所述目标码流的第M至第L个解码层对应的待解码节点进行解码处理;
    其中,L为所述目标码流所包含的解码层的总数目,L为大于1的正整数,M为小于或等于L的正整数。
  16. 根据权利要求14所述的方法,其中,所述对目标码流进行解码处理,包括:
    在第三参数指示开启低时延解码的情况下,对所述目标码流的L个编码 层对应的待解码节点进行解码处理;
    其中,L为所述目标码流所包含的解码层的总数目,L为大于1的正整数。
  17. 根据权利要求14所述的方法,其中,所述确定第二点云信息预测列表包括以下至少一项:
    在第四参数指示开启几何信息与属性信息并行解码的情况下,确定第二几何信息预测列表和第二属性信息预测列表;
    在第四参数指示不开启几何信息与属性信息并行解码的情况下,确定第二几何信息预测列表,并根据重建的几何信息,确定第三属性信息预测列表。
  18. 根据权利要求14所述的方法,其中,所述确定第二点云信息预测列表,包括:
    构建初始点云信息预测列表,所述初始点云信息预测列表包括N2个先验值,N2为正整数;
    根据所述目标码流中已解码节点的点云信息,对所述先验值进行更新,得到所述第二点云信息预测列表。
  19. 根据权利要求18所述的方法,其中,所述根据所述目标码流中已解码节点的点云信息,对所述先验值进行更新,包括:
    在第一已解码节点的点云信息的信息值或预测残差大于第二预设阈值的情况下,将第二先验值更新为当前待解码节点对应的最大预测值,所述第二先验值为所述第二点云信息预测列表中的任意一个先验值,所述第一已解码节点为位于当前待解码节点之前的第K3个已解码节点,K3为正整数;
    或者,将第一先验值更新为第二已解码节点的点云信息,所述第二已编码节点为位于所述当前待解码节点之前的第K4个已解码节点,K4为正整数;
    或者,将第一先验值更新为第二目标点云信息,所述第二目标点云信息是根据所述第二已解码节点的点云信息和第三已解码节点的点云信息确定的,所述第三已解码节点为位于所述当前待解码节点之前的第K5个已解码节点,K5为正整数;
    或者,将第一先验值更新为第二目标几何信息,所述第二目标几何信息是根据所述目标点云中的所有已解码节点的几何信息确定的;
    或者,将第一先验值更新为第四已解码节点对应的点云信息,所述第四已解码节点为所述目标点云的目标节点中与当前待解码节点的几何距离最近的节点,所述目标节点为所述目标码流的第1个解码层至第M-1个解码层对应的节点,L为所述目标码流所包含的解码层的总数目,M为所述目标码流中启动预测解码的解码层,L为大于1的正整数,M为小于或等于L的正整数。
  20. 根据权利要求17所述的方法,其中,所述根据重建的几何信息,确定第三属性信息预测列表,包括:
    确定S2个已解码节点集合,每个已解码节点集合包括至少一个已编码节点,S2为正整数,S2是根据第三属性信息预测列表的大小确定的;
    在每个所述已解码节点集合中查找与当前待解码节点的几何距离最近的目标已解码节点;
    根据所述目标已解码节点的属性信息,确定第三属性信息预测列表。
  21. 一种点云编码装置,包括:
    第一确定模块,用于确定第一点云信息预测列表,所述第一点云信息预测列表包括目标点云中已编码节点的点云信息;
    第一处理模块,用于根据所述第一点云信息预测列表,对所述目标点云中的待编码节点进行预测编码。
  22. 一种点云编码装置,包括处理器,存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,其中,所述程序或指令被所述处理器执行时实现如权利要求1至13任一项所述的点云编码方法的步骤。
  23. 一种点云解码装置,包括:
    第二处理模块,用于对目标码流进行解码处理,得到所述目标码流中待解码节点的解码信息,所述解码信息包括待解码节点的预测残差和待解码节点的预测模式,或者,所述解码信息包括待解码节点的预测残差,所述目标 码流是对目标点云中的节点进行编码处理后得到的;
    第二确定模块,用于确定第二点云信息预测列表,所述第二点云信息预测列表包括目标码流中已解码节点的点云信息;
    第一获取模块,用于根据所述第二点云信息预测列表和所述解码信息,获取所述待解码节点对应的点云信息。
  24. 一种点云解码装置,包括处理器,存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,其中,所述程序或指令被所述处理器执行时实现如权利要求14至20任一项所述的点云解码方法的步骤。
  25. 一种可读存储介质,所述可读存储介质上存储程序或指令,其中,所述程序或指令被处理器执行时实现如权利要求1至13任一项所述的点云编码方法的步骤,或者实现如权利要求14至20任一项所述的点云解码方法的步骤。
  26. 一种芯片,包括处理器和通信接口,其中,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现如权利要求1至13任一项所述的点云编码方法的步骤,或者实现如权利要求14至20任一项所述的点云解码方法的步骤。
  27. 一种计算机程序产品,其中,所述计算机程序产品被存储在非易失的存储介质中,所述计算机程序产品被至少一个处理器执行以实现如权利要求1至13任一项所述的点云编码方法的步骤,或者所述计算机程序产品被至少一个处理器执行以实现如权利要求14至20任一项所述的点云解码方法的步骤。
  28. 一种通信设备,被配置为执行如权利要求1至13任一项所述的点云编码方法的步骤,或者被配置为执行如权利要求14至20任一项所述的点云解码方法的步骤。
PCT/CN2022/097660 2021-06-11 2022-06-08 点云编码方法、解码方法及装置 Ceased WO2022257978A1 (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN202110656061.3 2021-06-11
CN202110656061 2021-06-11
CN202110941633.2A CN115474059B (zh) 2021-06-11 2021-08-17 点云编码方法、解码方法及装置
CN202110941633.2 2021-08-17

Publications (1)

Publication Number Publication Date
WO2022257978A1 true WO2022257978A1 (zh) 2022-12-15

Family

ID=84364503

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/097660 Ceased WO2022257978A1 (zh) 2021-06-11 2022-06-08 点云编码方法、解码方法及装置

Country Status (2)

Country Link
CN (1) CN115474059B (zh)
WO (1) WO2022257978A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024216435A1 (zh) * 2023-04-17 2024-10-24 Oppo广东移动通信有限公司 编解码方法及装置、编解码器、码流、设备、存储介质
WO2024244900A1 (zh) * 2023-05-31 2024-12-05 腾讯科技(深圳)有限公司 点云处理方法、装置及计算机设备、存储介质

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN121357324A (zh) * 2023-03-14 2026-01-16 维沃移动通信有限公司 点云编码处理方法、点云解码处理方法及相关设备
CN121444455A (zh) * 2023-05-12 2026-01-30 Oppo广东移动通信有限公司 点云编解码方法、解码器、编码器及计算机可读存储介质
CN119810219A (zh) * 2023-10-10 2025-04-11 维沃移动通信有限公司 点云属性信息的确定方法、装置和电子设备
CN119815052B (zh) * 2023-10-10 2025-11-18 维沃移动通信有限公司 编码方法、解码方法及相关设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109257604A (zh) * 2018-11-20 2019-01-22 山东大学 一种基于tmc3点云编码器的颜色属性编码方法
CN111465964A (zh) * 2017-10-19 2020-07-28 交互数字Vc控股公司 编码/解码表示3d对象的点云的几何形状的方法和装置
CN111953998A (zh) * 2020-08-16 2020-11-17 西安电子科技大学 基于dct变换的点云属性编码及解码方法、装置及系统
CN112262412A (zh) * 2018-06-13 2021-01-22 松下电器(美国)知识产权公司 三维数据编码方法、三维数据解码方法、三维数据编码装置、以及三维数据解码装置
CN112399165A (zh) * 2019-08-14 2021-02-23 腾讯美国有限责任公司 解码方法及装置以及计算机设备和存储介质
WO2021108969A1 (zh) * 2019-12-02 2021-06-10 Oppo广东移动通信有限公司 属性信息的预测方法、编码器、解码器、及存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11210813B2 (en) * 2019-05-30 2021-12-28 Tencent America LLC Method and apparatus for point cloud compression
WO2021049758A1 (ko) * 2019-09-11 2021-03-18 엘지전자 주식회사 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법
CN111405281A (zh) * 2020-03-30 2020-07-10 北京大学深圳研究生院 一种点云属性信息的编码方法、解码方法、存储介质及终端设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111465964A (zh) * 2017-10-19 2020-07-28 交互数字Vc控股公司 编码/解码表示3d对象的点云的几何形状的方法和装置
CN112262412A (zh) * 2018-06-13 2021-01-22 松下电器(美国)知识产权公司 三维数据编码方法、三维数据解码方法、三维数据编码装置、以及三维数据解码装置
CN109257604A (zh) * 2018-11-20 2019-01-22 山东大学 一种基于tmc3点云编码器的颜色属性编码方法
CN112399165A (zh) * 2019-08-14 2021-02-23 腾讯美国有限责任公司 解码方法及装置以及计算机设备和存储介质
WO2021108969A1 (zh) * 2019-12-02 2021-06-10 Oppo广东移动通信有限公司 属性信息的预测方法、编码器、解码器、及存储介质
CN111953998A (zh) * 2020-08-16 2020-11-17 西安电子科技大学 基于dct变换的点云属性编码及解码方法、装置及系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024216435A1 (zh) * 2023-04-17 2024-10-24 Oppo广东移动通信有限公司 编解码方法及装置、编解码器、码流、设备、存储介质
WO2024244900A1 (zh) * 2023-05-31 2024-12-05 腾讯科技(深圳)有限公司 点云处理方法、装置及计算机设备、存储介质

Also Published As

Publication number Publication date
CN115474059A (zh) 2022-12-13
CN115474059B (zh) 2026-01-30

Similar Documents

Publication Publication Date Title
CN115471627B (zh) 点云的几何信息编码处理方法、解码处理方法及相关设备
WO2022257978A1 (zh) 点云编码方法、解码方法及装置
CN115474051B (zh) 点云编码方法、点云解码方法及终端
CN115474058B (zh) 点云编码处理方法、点云解码处理方法及相关设备
CN115474052B (zh) 点云编码处理方法、解码处理方法及相关设备
CN116233387B (zh) 点云编码、解码方法、装置及通信设备
CN115714859B (zh) 点云属性编码方法、点云属性解码方法及终端
WO2022258009A1 (zh) 熵编码、解码方法及装置
WO2023098802A1 (zh) 点云属性编码方法、点云属性解码方法及终端
US20240121439A1 (en) Point cloud attribute information encoding method and apparatus, point cloud attribute information decoding method and apparatus, and related device
JP7660713B2 (ja) 点群コーディング処理方法、デコーディング処理方法及び装置
CN118678075B (zh) 点云编码处理方法、点云解码处理方法及相关设备
CN116233389B (zh) 点云编码处理方法、点云解码处理方法及相关设备
CN119071493A (zh) 点云编码处理方法、点云解码处理方法及相关设备
WO2024217301A1 (zh) 点云编码处理方法、点云解码处理方法及相关设备
WO2025077667A1 (zh) 点云属性信息的确定方法、装置和电子设备
WO2026092248A1 (zh) 属性信息的解码、编码方法、装置及设备
WO2024120325A1 (zh) 点云编码方法、点云解码方法及终端
WO2025152924A1 (zh) 编解码方法及相关设备
WO2025067194A1 (zh) 点云编码处理方法、点云解码处理方法及相关设备
CN118175341A (zh) 几何编码方法、几何解码方法及终端
CN118828023A (zh) 点云编码处理方法、点云解码处理方法及相关设备

Legal Events

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

Ref document number: 22819575

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 22819575

Country of ref document: EP

Kind code of ref document: A1

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 23/04/2024)

122 Ep: pct application non-entry in european phase

Ref document number: 22819575

Country of ref document: EP

Kind code of ref document: A1