WO2022257970A1 - 点云的几何信息编码处理方法、解码处理方法及相关设备 - Google Patents

点云的几何信息编码处理方法、解码处理方法及相关设备 Download PDF

Info

Publication number
WO2022257970A1
WO2022257970A1 PCT/CN2022/097634 CN2022097634W WO2022257970A1 WO 2022257970 A1 WO2022257970 A1 WO 2022257970A1 CN 2022097634 W CN2022097634 W CN 2022097634W WO 2022257970 A1 WO2022257970 A1 WO 2022257970A1
Authority
WO
WIPO (PCT)
Prior art keywords
node
geometric information
nodes
encoded
code
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/097634
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 WO2022257970A1 publication Critical patent/WO2022257970A1/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
    • G06T17/00Three-dimensional [3D] modelling for computer graphics
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three-dimensional [3D] modelling for computer graphics
    • G06T17/005Tree description, e.g. octree, quadtree
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three-dimensional [3D] modelling for computer graphics
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • 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/004Predictors, e.g. intraframe, interframe coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction

Definitions

  • the present application belongs to the technical field of point cloud processing, and in particular relates to a point cloud geometric information encoding processing method, decoding processing method and related equipment.
  • the traditional exploration model proposes an inter-frame coding framework based on the intra-frame coding framework.
  • the intra-frame and inter-frame coding use the same set of contexts. If the corresponding node between frames is not occupied, the intra-frame context is used. If the inter-frame corresponding node is occupied, intra-frame prediction is used, and this node is the context with the highest probability of being occupied. When the inter-frame corresponding nodes are noise points, the accuracy of inter-frame prediction will be poor.
  • the embodiment of the present application provides a point cloud geometric information encoding processing method, decoding processing method and related equipment, which can solve the problem of poor inter-frame prediction accuracy during the inter-frame prediction process of the existing inter-frame coding framework.
  • a method for encoding geometric information of point clouds including:
  • the first node is a node corresponding to the second node in the tree structure corresponding to the second geometric information
  • the second node is A child node to be encoded in the current node to be encoded in the tree structure corresponding to the first geometric information
  • Entropy encoding is performed on the placeholder code of the second node by using the target context.
  • a method for decoding and processing geometric information of point clouds including:
  • the second geometric information is the reconstruction geometric information of the reference frame point cloud corresponding to the Nth frame point cloud currently to be decoded;
  • the first node corresponds to the second node in the tree structure corresponding to the second geometric information node
  • the second node is a child node to be decoded in the current node to be decoded in the tree structure corresponding to the first geometric information
  • the first geometric information is the geometric information corresponding to the decoded node of the Nth frame point cloud
  • a device for encoding and processing point cloud geometric information including:
  • a first division module configured to perform synchronous tree division on the first geometric information and the second geometric information, and obtain a first placeholder code corresponding to the first geometric information and a second placeholder code corresponding to the second geometric information ;
  • the first geometric information is obtained by preprocessing the geometric information of the Nth frame point cloud to be encoded currently, N is an integer greater than 1, and the second geometric information is the reference frame corresponding to the Nth frame point cloud The reconstructed geometric information of the point cloud;
  • the first determination module is configured to determine the target context according to the occupancy of the first node and the neighbor nodes of the first node; the first node is a node corresponding to the second node in the tree structure corresponding to the second geometric information , the second node is a child node to be encoded in the current node to be encoded in the tree structure corresponding to the first geometric information;
  • An encoding module configured to perform entropy encoding on the placeholder code of the second node by using the target context.
  • a device for decoding and processing point cloud geometric information including:
  • the second division module is used to divide the second geometric information into a tree structure to obtain a second placeholder code, and the second geometric information is the reconstructed geometric information of the reference frame point cloud corresponding to the Nth frame point cloud currently to be decoded ;
  • the second determination module is configured to determine the occupancy of the first node and the neighbor nodes of the first node based on the second occupancy code, and determine the target context;
  • the first node is a tree structure corresponding to the second geometric information
  • the second node is a child node to be decoded in the current node to be decoded in the tree structure corresponding to the first geometric information
  • the first geometric information is that the Nth frame point cloud has been decoded
  • a decoding module configured to use the target context to perform entropy decoding on the geometric code stream corresponding to the second node to obtain a placeholder code corresponding to the second node;
  • a reconstruction module configured to perform multi-tree reconstruction based on the placeholder code corresponding to the second node, and obtain geometric information of the second node.
  • a terminal includes a processor, a memory, and a program or instruction stored in the memory and operable on the processor.
  • the program or instruction is executed by the processor The steps of the method described in the first aspect are realized.
  • a terminal including a processor and a communication interface, wherein,
  • the processor is configured to:
  • the first node is a node corresponding to the second node in the tree structure corresponding to the second geometric information
  • the second node is A child node to be encoded in the current node to be encoded in the tree structure corresponding to the first geometric information
  • the processor is operable to:
  • Carry out tree structure division to the second geometric information, obtain the second placeholder code, described second geometric information is the reconstructed geometric information of the reference frame point cloud corresponding to the Nth frame point cloud to be decoded currently;
  • the first node corresponds to the second node in the tree structure corresponding to the second geometric information node
  • the second node is a child node to be decoded in the current node to be decoded in the tree structure corresponding to the first geometric information
  • the first geometric information is the geometric information corresponding to the decoded node of the Nth frame point cloud
  • 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.
  • the embodiment of the present application 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, so as to implement the first aspect The steps of the method, or the steps of the method for realizing the second aspect.
  • a ninth aspect provides a computer program/program product, the computer program/program product is stored in a non-transitory storage medium, and the computer program/program product is executed by at least one processor to implement the first aspect The steps of the method, or the steps of implementing the method as described in the second aspect.
  • a communication device configured to perform the steps of the method described in the first aspect, or to perform the steps of the method described in the second aspect.
  • the first placeholder code corresponding to the first geometry information and the second placeholder code corresponding to the second geometry information are obtained by performing synchronous tree division on the first geometry information and the second geometry information;
  • the first geometric information is obtained by preprocessing based on the geometric information of the point cloud of the Nth frame to be encoded, N is an integer greater than 1, and the second geometric information is the point cloud of the reference frame corresponding to the point cloud of the Nth frame.
  • the reconstructed geometric information according to the occupancy of the first node and the neighbor nodes of the first node, determine the target context;
  • the first node is the node corresponding to the second node in the tree structure corresponding to the second geometric information, so
  • the second node is a sub-node to be encoded in the current node to be encoded in the tree structure corresponding to the first geometric information;
  • the target context is used to perform entropy encoding on the placeholder code of the second node.
  • the embodiment of the present application can improve Inter prediction accuracy.
  • Figure 1 is a schematic diagram of the point cloud AVS encoder framework
  • Figure 2 is a schematic diagram of the point cloud AVS decoder framework
  • FIG. 3 is a schematic diagram of an interframe coding framework
  • Fig. 4 is a flow chart of a method for encoding and processing geometric information of a point cloud provided by an embodiment of the present application
  • Fig. 5 is a schematic diagram of the processing flow of octree encoding
  • FIG. 6 is a schematic flow chart of entropy encoding using the first set of contexts
  • Fig. 7 is a flow chart of a geometric information decoding processing method of a point cloud provided by an embodiment of the present application.
  • FIG. 8 is a structural diagram of a point cloud geometric information encoding processing device provided by an embodiment of the present application.
  • FIG. 9 is a structural diagram of a point cloud geometric information decoding processing device provided by an embodiment of the present application.
  • FIG. 10 is a structural diagram of a communication device provided by an embodiment of the present application.
  • FIG. 11 is a structural diagram of a terminal provided by 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. It is usually one category, and the number of objects is not limited. For example, there may be one or more first objects.
  • “and/or” in the specification and claims means at least one of the connected objects, and the character “/” generally means that the related objects before and after are an "or” relationship.
  • the codec terminal corresponding to the codec method in the embodiment of the present application can be a terminal, and the terminal can also be called a terminal device or a user terminal (User Equipment, UE), and the terminal can be a mobile phone, a tablet computer (Tablet Personal Computer), a laptop 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 (Vehicle User Equipment, VUE), pedestrian terminal (Pedestrian User Equipment , PUE) and other terminal-side devices, 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.
  • the geometric information and attribute information of the point cloud are encoded separately.
  • coordinate transformation is performed on the geometric information so that all point clouds are contained in a bounding box, and then the coordinates are quantized.
  • Quantization mainly plays the role of scaling. Since quantization will round the geometric coordinates, the geometric information of some points will be the same, which is called duplicate points. It is determined whether to remove duplicate points according to the parameters. Quantization and removal of duplicate points are two steps. Also known as the voxelization process.
  • the bounding box is divided into 8 sub-cubes, and the non-empty sub-cubes continue to be divided until the unit cube with leaf nodes of 1x1x1 is obtained.
  • the number of points in the point is encoded to generate a binary code stream.
  • the current AVS geometry division sequence includes two types:
  • Depth-first traversal order When dividing the geometry into an octree, the first node of the current layer will be divided continuously until the leaf node obtained by division is a 1x1x1 unit cube and stop dividing the current node. According to this sequence, the subsequent nodes of the current layer are divided until the division of the nodes on the current layer is completed.
  • Attribute coding is mainly aimed at color and reflectance information. First, judge whether to perform color space conversion according to the parameters. If color space conversion is performed, the color information is converted from Red Green Blue (RGB) color space to brightness color (YUV) color space. Then, the geometrically reconstructed point cloud is recolored with the original point cloud so that the unencoded attribute information corresponds to the reconstructed geometric information.
  • RGB Red Green Blue
  • YUV brightness color
  • the nearest neighbor of the point to be predicted is searched using the geometric spatial relationship, and the reconstructed attribute value of the found neighbor is used to predict the point to be predicted to obtain the predicted attribute value, and then the The real attribute value and the predicted attribute value are differentiated to obtain the prediction residual, and finally the prediction residual is quantized and encoded to generate a binary code stream.
  • the AVS decoding process corresponds to the encoding process.
  • the AVS decoder framework is shown in FIG. 2 .
  • the EM model of AVS proposes an inter-frame coding framework based on the above-mentioned intra-frame coding framework, as shown in FIG. 3 .
  • the specific coding process is as follows:
  • I frame and P frame Two frame types are set: I frame and P frame.
  • the first frame of each sequence is an I frame, and only intra-frame prediction is used. All subsequent frames are P frames, and forward inter-frame prediction is performed, and the previous frame is used as a reference frame.
  • an interframe flag (interMode) is added to control whether to use the interframe prediction tool;
  • the same sub-block division operation as that of the current block to be encoded is performed to obtain the occupancy code information of the predicted block and the current block respectively.
  • the decoding process corresponds to the encoding process, which will not be repeated here.
  • FIG. 4 is a flow chart of a point cloud geometric information encoding processing method provided by an embodiment of the present application. As shown in FIG. 4, it includes the following steps:
  • Step 401 divide the first geometry information and the second geometry information into a synchronous tree, and obtain a first placeholder code corresponding to the first geometry information and a second placeholder code corresponding to the second geometry information;
  • the first geometric information is obtained by preprocessing the geometric information of the point cloud of the Nth frame to be encoded currently, N is an integer greater than 1, and the second geometric information is the reconstruction of the point cloud of the reference frame corresponding to the point cloud of the Nth frame geometric information;
  • the synchronous tree division of the first geometric information and the second geometric information can be understood as, when the tree structure division is performed on the second geometric information, the tree structure of the first geometric information is referred to for synchronous division, that is, the first geometric information is divided synchronously. Whether a certain node in the tree structure corresponding to the second geometric information is divided into child nodes needs to be synchronized with the corresponding node in the tree structure corresponding to the first geometric information.
  • tree structure division may be understood as multi-tree structure division, for example, octree division, quadtree division, and binary tree division may be used.
  • the above-mentioned reference frame point cloud is at least one frame of point cloud that has been encoded.
  • the geometric information can be reconstructed to obtain the reconstructed geometric information and open up memory to save each frame.
  • the reconstructed geometric information corresponding to a frame of encoded point cloud.
  • the geometric information of the point cloud of the Nth frame can be preprocessed to obtain the first geometric information.
  • the foregoing preprocessing refers to coordinate translation and quantization processing performed before the synchronization tree division.
  • coordinate translation, quantization processing, and deduplication processing may be performed on the geometric information of the point cloud of the Nth frame to obtain the first geometric information corresponding to the point cloud of the Nth frame.
  • Step 402 Determine the target context according to the occupancy of the first node and the neighbor nodes of the first node; the first node is a node corresponding to the second node in the tree structure corresponding to the second geometric information, and the second node The second node is a child node to be encoded in the current node to be encoded in the tree structure corresponding to the first geometric information;
  • the occupancy status of the first node may include whether the first node is occupied, and the number of points of the second geometric information included in the space block corresponding to the first node.
  • the spatial block corresponding to the first node contains at least one point of the second geometric information, it means that the first node is occupied; when the spatial block corresponding to the first node does not contain the point of the second geometric information, it means that the first Node is not occupied. Since the target context of the current node to be encoded is determined by the occupancy of the first node and the occupancy of the neighbors of the first node, compared to the prior art, the context is determined only by the occupancy of one node, which can improve the performance of inter-frame prediction. probability.
  • Step 403 using the target context to perform entropy encoding on the placeholder code of the second node.
  • the occupancy code of the current node to be encoded can be obtained, and then the target context corresponding to each child node is determined, so that the occupancy code of each child node of each node can be determined.
  • the bitcode is entropy encoded.
  • the first placeholder code corresponding to the first geometry information and the second placeholder code corresponding to the second geometry information are obtained by performing synchronous tree division on the first geometry information and the second geometry information;
  • the first geometric information is obtained by preprocessing based on the geometric information of the point cloud of the Nth frame to be encoded, N is an integer greater than 1, and the second geometric information is the point cloud of the reference frame corresponding to the point cloud of the Nth frame.
  • the reconstructed geometric information according to the occupancy of the first node and the neighbor nodes of the first node, determine the target context;
  • the first node is the node corresponding to the second node in the tree structure corresponding to the second geometric information, so
  • the second node is a sub-node to be encoded in the current node to be encoded in the tree structure corresponding to the first geometric information;
  • the target context is used to perform entropy encoding on the placeholder code of the second node.
  • the embodiment of the present application can improve Inter prediction accuracy.
  • the step of determining the target context according to the occupancy of the first node and the neighbor nodes of the first node includes:
  • the target context is determined based on the weighted sum.
  • the corresponding value can be set to 1, and the unoccupied value can be set to 0, based on the weight corresponding to the product of the value corresponding to each node. Obtain the above weighted sum.
  • the above target context may include a first set of contexts for inter-frame coding or a second set of contexts for intra-frame coding.
  • the first set of contexts can be designed through the occupancy patterns of neighboring nodes of corresponding nodes between frames, and the second set of contexts can use intra-frame contexts.
  • the foregoing weighted sum may be compared with a certain threshold to determine whether to use the first set of contexts or the second set of contexts. For example, when the weighted sum is greater than the threshold, the first set of contexts may be used for entropy encoding, and when the weighted sum is less than or equal to the threshold, the second set of contexts may be used for entropy encoding.
  • the target context includes a first set of contexts for inter-frame coding
  • using the target context to perform entropy coding on the placeholder code of the second node include:
  • Entropy encoding is performed on the placeholder code of the second node by using the context corresponding to the index value in the first set of context.
  • the above weighted sum may be used to determine a part of the bit sequence of the index value, for example, divide the weighted sum by 2 to obtain the index (CtxIdx). Whether the occupancy of the third node and the occupancy of the fourth node are the same determine another part of the bit sequence of the index value, for example, determine the corresponding identification value sameFlag based on whether they are the same, sameFlag equal to 1 means the same, sameFlag equal to 0 means different. Index to the corresponding context based on CtxIdx and sameFlag, and perform entropy encoding. Since the context of the current node to be encoded is determined by whether the previous node and the node corresponding to the geometric information are the same, the accuracy of inter-frame prediction is fully considered.
  • sameFlag can be set as a default value. After the entropy coding of the child node of the current node to be coded is completed, it may be determined whether the occupancy of the child node is the same as that of the node corresponding to the second geometric information, so as to perform entropy coding on the next child node.
  • the M neighbor nodes include at least one of the following: co-planar neighbor nodes, collinear neighbor nodes, and co-point neighbor nodes.
  • the types of the M neighbor nodes can be set according to actual needs.
  • the M neighbor nodes include co-planar neighbor nodes, collinear neighbor nodes and co-point neighbor nodes as examples for illustration.
  • the corresponding weight can also be set according to the first node and the degree of correlation between the first node and the second node, for example, the weight value of the first node is greater than or equal to the weight value of the coplanar neighbor node, the The weight value of the coplanar neighbor nodes is greater than or equal to the weight value of the collinear neighbor nodes, and the weight value of the collinear neighbor nodes is greater than or equal to the weight value of the collinear neighbor nodes.
  • the weight value of the first node is Wcur
  • the weight value of the coplanar neighbor nodes of the first node is Wf
  • the weight value of the collinear neighbor nodes of the first node is Wl
  • the weight value of the co-point neighbor nodes of the first node is is Wp
  • the occupied quantity of the first node is OCcur
  • the occupied quantity of the coplanar neighbor nodes of the first node is OCf
  • the occupied quantity of the collinear neighbor nodes of the first node is OCl
  • the co-located neighbors of the first node The number of nodes occupied is OCp.
  • the root node when encoding the first geometric information, may be first determined and stored in the first node queue. It should be understood that the root node corresponds to a bounding box, including all points in the first geometric information. Then divide the root node into a tree structure to obtain child nodes, and store the occupied child nodes in the first node queue based on the occupation of the child nodes. At this time, the occupied child node can be added to the first node queue, and the specific position of adding to the first node queue can be after the last node of the first node queue, or after the node currently undergoing structure tree division . When encoding, the nodes in the first node queue may be traversed sequentially as the current nodes to be encoded, and the encoding operation is performed.
  • performing tree structure division on the first geometric information to obtain a first placeholder code corresponding to the first geometric information includes:
  • the first node queue includes nodes that are occupied by corresponding space blocks in the tree structure constructed based on the first geometric information
  • the first placeholder code includes the placeholder code of the current node to be coded.
  • the current node to be coded can be understood as a root node, a child node or a leaf node. It should be understood that when dividing the structure tree of the current node to be encoded, it is necessary to perform synchronous tree division on the nodes corresponding to the current node to be encoded in the structure tree corresponding to the second geometric information. Specifically, it may first be judged whether the current node to be coded satisfies the outlier coding conditions, and if the outlier conditions are met, the outlier coding mode is entered, and if the outlier coding conditions are not met, the outlier coding mode is entered. After entering the placeholder code encoding mode, the current node to be encoded can be divided into a tree structure first to obtain the child nodes of the current node to be encoded, so as to further determine the placeholder code of the current node to be encoded.
  • the method further includes:
  • the current node to be encoded When the current node to be encoded satisfies the isolated point encoding condition, and the current node to be encoded is a non-isolated node, perform tree structure division on the current node to be encoded, and obtain the child nodes of the current node to be encoded .
  • the current node to be encoded is an isolated node.
  • the condition of whether it is an isolated node can be set according to actual needs. For example, in some embodiments, when the point cloud of the Nth frame includes less than a preset number of points located in the space block corresponding to the current node to be encoded, It can be considered that the current node to be coded is an isolated node.
  • the geometric information of the multiple points may be partially or completely the same, or all may be different. When the geometric information is the same, the corresponding attribute information is different.
  • perform tree structure division on the current node to be encoded first, and then determine whether the isolated point is satisfied.
  • perform tree structure division on the first geometric information to obtain the The first placeholder code corresponding to the first geometric information includes:
  • the first node queue includes nodes that are occupied by corresponding space blocks in the tree structure constructed based on the first geometric information
  • the placeholder code of the current node to be coded based on the occupancy of the child nodes of the current coded node
  • the first placeholder code includes the placeholder code of the current node to be coded.
  • the tree structure since the tree structure is divided first, it can be determined whether the current node to be encoded satisfies the isolated point according to the occupancy of the child nodes of the node corresponding to the current node to be encoded in the tree structure corresponding to the second geometric information. encoding conditions.
  • the method further includes:
  • the current node to be encoded When the current node to be encoded satisfies the isolated point encoding condition, and the current node to be encoded is a non-isolated node, determine the occupancy of the current node to be encoded based on the occupancy of the child nodes of the current to be encoded node bitcode.
  • the current node to be encoded after entering the isolated point encoding mode, it is first determined whether the current node to be encoded is not an isolated node. It should be understood that the condition of whether it is an isolated node can be set according to actual needs. For example, in some embodiments, when the point cloud of the Nth frame includes less than a preset number of points located in the space block corresponding to the current node to be encoded, It can be considered that the current node to be encoded is an isolated node. Wherein, when multiple points are located in the space block corresponding to the isolated node, the geometric information of the multiple points may be partially or completely the same, or all may be different. When the geometric information is the same, the corresponding attribute information is different.
  • the isolated point encoding condition can also be used to determine whether to , to determine the target context. That is, after the tree structure is divided, the placeholder code can be determined, and then the outlier encoding condition is judged. If the outlier encoding condition is met, enter the outlier encoding mode; Placeholder encoding mode. After entering the occupancy code coding mode, the target context can be determined according to the occupancy of the first node and the neighbor nodes of the first node.
  • performing tree structure division on the second geometric information to obtain a second placeholder code corresponding to the second geometric information includes:
  • the second occupancy code includes the occupancy code of the fifth node Occupancy code
  • the occupancy code of the fifth node since the occupancy code of the fifth node is stored, the occupancy of the fifth node's neighbor nodes on the same layer can be obtained, and the occupancy status of the same-layer node corresponding to the parent node of the fifth node can also be obtained. Occupancy of child nodes. Therefore, the accuracy of judging the coding condition of the isolated point can be further improved.
  • the outlier encoding conditions include:
  • the directly encoded identifier of the geometric header information corresponding to the Nth frame point cloud is a preset value
  • the spatial block corresponding to the current node to be encoded has side lengths in L directions greater than the preset minimum side length
  • the sum of the Morton code bits to be encoded at the target point is greater than the preset times of L
  • the target The points include points in the first geometric information located in the spatial block corresponding to the current node to be encoded, and L is a natural number
  • the target node is a node associated with the current node to be encoded among the encoded nodes.
  • the above-mentioned preset times may be 2 times.
  • the condition that the target node is occupied satisfies the preset condition as part of the outlier encoding condition, so that it can be determined whether the current node satisfies the outlier condition according to the sparseness of the nodes in the second geometric information.
  • Encoding conditions For example, if the nodes corresponding to the reconstructed point cloud of the reference frame are relatively sparse, then the nodes of the current frame are also highly likely to be sparse, so the probability of this node being an isolated point is relatively high.
  • the node of the current frame node entering the isolated point encoding mode is a real isolated point with a high probability, and enters the isolated point encoding by upgrading
  • the target node includes at least one of the following:
  • a child node of a fifth node where the fifth node is a node corresponding to the current node to be encoded in the tree structure corresponding to the second geometric information;
  • a child node of the neighbor node of the fifth node A child node of the neighbor node of the fifth node.
  • the neighbor nodes of the fifth node include at least one of the following:
  • the fact that the target node is occupied and the preset condition is satisfied includes at least one of the following:
  • the number of nodes occupied by the target node is less than a second threshold
  • the number of points located in the spatial block corresponding to the target node in the second geometric information is less than a third threshold.
  • octree coding will be taken as an example for description below. First open up a part of the memory to save the reconstructed point cloud obtained by the encoded frame as the reference frame of the current frame point cloud and record the reconstructed point cloud as pointcloudPred. As shown in Figure 5, the processing flow of octree encoding is as follows:
  • the sub-node corresponding to the reference frame can be understood as a node corresponding to the sub-node currently performing entropy encoding among the nodes corresponding to the point cloud reconstruction of the reference frame.
  • the first set of contexts can be designed based on the occupancy patterns of neighboring nodes of corresponding nodes between frames, and the second set of contexts can use intra-frame contexts.
  • the context index number is obtained by mapping the placeholder code weight OccupancyWeight, which is set to CtxIdx.
  • One of the methods is to divide the OccupancyWeight by 2 to obtain the index;
  • the context of the current sub-node to be encoded is determined according to whether the occupancy of the previous sub-node and the corresponding sub-node of the reference frame are the same, fully considering the accuracy of inter-frame prediction, and more effective prediction can be performed.
  • FIG. 7 is a flow chart of a point cloud geometric information decoding processing method provided by an embodiment of the present application. As shown in FIG. 7, it includes the following steps:
  • Step 701 divide the second geometric information into a tree structure to obtain a second placeholder code, and the second geometric information is the reconstructed geometric information of the reference frame point cloud corresponding to the point cloud of the Nth frame to be decoded;
  • Step 702 determine the occupancy of the first node and the neighbor nodes of the first node based on the second occupancy code, and determine the target context;
  • the first node is the second node in the tree structure corresponding to the second geometric information.
  • the node corresponding to the node, the second node is a child node to be decoded in the current node to be decoded in the tree structure corresponding to the first geometric information, and the first geometric information is the geometry corresponding to the decoded node of the Nth frame point cloud information;
  • Step 703 using the target context to perform entropy decoding on the geometric code stream corresponding to the second node to obtain a placeholder code corresponding to the second node;
  • Step 704 Perform multi-tree reconstruction based on the placeholder code corresponding to the second node to obtain geometric information of the second node.
  • the first geometric information may be obtained through entropy decoding and multi-tree reconstruction based on the geometric code stream corresponding to the point cloud of the Nth frame.
  • the step of determining the occupancy of the first node and the neighbor nodes of the first node based on the second occupancy code, and determining the target context includes:
  • the target context is determined based on the weighted sum.
  • the target context when the target context includes a first set of contexts for inter-frame decoding, use the target context to perform entropy decoding on the geometric code stream corresponding to the second node to obtain the second node
  • the corresponding placeholder code steps include:
  • Entropy decoding is performed on the placeholder code of the second node by using the context corresponding to the index value in the first set of context to obtain the placeholder code corresponding to the second node.
  • the M neighbor nodes include at least one of the following: co-planar neighbor nodes, collinear neighbor nodes, and co-point neighbor nodes.
  • the weight value of the first node is greater than or equal to the weight value of the coplanar neighbor node
  • the weight value of the coplanar neighbor node is greater than or equal to the weight value of the collinear neighbor node, so The weight value of the collinear neighbor nodes is greater than or equal to the weight value of the collinear neighbor nodes.
  • the target context includes a first set of contexts for inter-frame decoding or a second set of contexts for intra-frame decoding.
  • dividing the first geometric information into a tree structure to obtain a first placeholder code corresponding to the first geometric information includes:
  • the first node queue includes nodes that are occupied by corresponding space blocks in the tree structure constructed based on the first geometric information
  • the second dummy code includes the dummy code of the first node.
  • the method further includes:
  • dividing the first geometric information into a tree structure to obtain a first placeholder code corresponding to the first geometric information includes:
  • the first node queue includes nodes occupied by corresponding space blocks in the tree structure constructed based on the first geometric information
  • the second dummy code includes the dummy code of the first node.
  • the method further includes:
  • the current node to be decoded satisfies the isolated point decoding condition and the current node to be decoded is a non-isolated node, determine the occupancy code of the first node based on the occupancy of the child nodes of the first node .
  • the method also includes:
  • a placeholder code of the first node is stored.
  • the outlier decoding conditions include:
  • the direct decoding identifier of the geometric header information corresponding to the Nth frame point cloud is a preset value
  • the spatial block corresponding to the current node to be decoded has side lengths in L directions greater than the preset minimum side length
  • the sum of the Morton code bits to be decoded at the target point is greater than the preset times of L
  • the target The points include points in the first geometric information located in the spatial block corresponding to the current node to be decoded, and L is a natural number
  • the target node is a node associated with the current node to be decoded among the decoded nodes.
  • the target node includes at least one of the following:
  • a child node of a fifth node where the fifth node is a node corresponding to the current node to be decoded in the tree structure corresponding to the second geometric information;
  • a child node of the neighbor node of the fifth node A child node of the neighbor node of the fifth node.
  • the neighbor nodes of the fifth node include at least one of the following:
  • the fact that the target node is occupied and the preset condition is satisfied includes at least one of the following:
  • the number of nodes occupied by the target node is less than a second threshold
  • the number of points located in the spatial block corresponding to the target node in the second geometric information is less than a third threshold.
  • this embodiment is an implementation of the decoding end corresponding to the embodiment shown in FIG. 4 , and the decoding process is the inverse process of the encoding process.
  • the decoding process is the inverse process of the encoding process.
  • specific implementation methods please refer to the relevant description of the embodiment shown in FIG. 4 , and To achieve the same beneficial effect, in order to avoid repeated descriptions, details are not repeated here.
  • the execution subject may be the point cloud geometric information encoding processing device, or the point cloud geometric information encoding processing device for executing point The control module of the geometric information encoding processing method of the cloud.
  • the point cloud geometric information encoding processing device provided in the embodiment of the present application is described by taking the point cloud geometric information encoding processing device executing the point cloud geometric information encoding processing method as an example.
  • FIG. 8 is a structural diagram of a point cloud geometric information encoding processing device provided in an embodiment of the present application.
  • the point cloud geometric information encoding processing device 800 includes:
  • the first division module 801 is configured to divide the first geometry information and the second geometry information into a synchronous tree, and obtain a first placeholder code corresponding to the first geometry information and a second placeholder corresponding to the second geometry information Code; the first geometric information is obtained by preprocessing based on the geometric information of the Nth frame point cloud to be encoded currently, N is an integer greater than 1, and the second geometric information is the reference corresponding to the Nth frame point cloud The reconstructed geometric information of the frame point cloud;
  • the first determination module 802 is configured to determine the target context according to the occupancy of the first node and the neighbor nodes of the first node; the first node is the node corresponding to the second node in the tree structure corresponding to the second geometric information node, the second node is a sub-node to be encoded in the current node to be encoded in the tree structure corresponding to the first geometric information;
  • the coding module 803 is configured to use the target context to perform entropy coding on the placeholder code of the second node.
  • the first determining module 802 includes:
  • a first calculation unit configured to calculate a weighted sum of the number of nodes occupied by the first node and M neighbor nodes, where the M neighbor nodes are at least some neighbor nodes of the first node;
  • a first determining unit configured to determine the target context based on the weighted sum.
  • the coding module 803 is specifically configured to perform the following operations:
  • Entropy encoding is performed on the placeholder code of the second node by using the context corresponding to the index value in the first set of context.
  • the M neighbor nodes include at least one of the following: co-planar neighbor nodes, collinear neighbor nodes, and co-point neighbor nodes.
  • the weight value of the first node is greater than or equal to the weight value of the coplanar neighbor node
  • the weight value of the coplanar neighbor node is greater than or equal to the weight value of the collinear neighbor node, so The weight value of the collinear neighbor nodes is greater than or equal to the weight value of the collinear neighbor nodes.
  • the target context includes a first set of contexts for inter-frame coding or a second set of contexts for intra-frame coding.
  • the first division module 801 is specifically configured to perform the following operations:
  • the first node queue includes nodes that are occupied by corresponding space blocks in the tree structure constructed based on the first geometric information
  • the first placeholder code includes the placeholder code of the current node to be coded.
  • the first dividing module 801 is further configured to: when the current node to be encoded satisfies the isolated point encoding condition, and the current node to be encoded is a non-isolated node, the current node to be encoded Perform tree structure division to obtain child nodes of the current node to be encoded.
  • the first division module 801 is specifically configured to perform the following operations:
  • the first node queue includes nodes that are occupied by corresponding space blocks in the tree structure constructed based on the first geometric information
  • the placeholder code of the current node to be coded based on the occupancy of the child nodes of the current coded node
  • the first placeholder code includes the placeholder code of the current node to be coded.
  • the first division module 801 is specifically configured to perform the following operations: in the case that the current node to be encoded satisfies the isolated point encoding condition, and the current node to be encoded is a non-isolated node, based on the current to-be-encoded node The occupancy of the sub-nodes of the node determines the occupancy code of the current node to be coded.
  • the first division module 801 is also configured to perform the following operations:
  • the second occupancy code includes the occupancy code of the fifth node occupancy code
  • the isolated point coding conditions include:
  • the directly encoded identifier of the geometric header information corresponding to the Nth frame point cloud is a preset value
  • the spatial block corresponding to the current node to be encoded has side lengths in L directions greater than the preset minimum side length
  • the sum of the Morton code bits to be encoded at the target point is greater than the preset times of L
  • the target The points include points in the first geometric information located in the spatial block corresponding to the current node to be encoded, and L is a natural number
  • the target node is a node associated with the current node to be encoded among the encoded nodes.
  • the target node includes at least one of the following:
  • a child node of a fifth node where the fifth node is a node corresponding to the current node to be encoded in the tree structure corresponding to the second geometric information;
  • a child node of the neighbor node of the fifth node A child node of the neighbor node of the fifth node.
  • the neighbor nodes of the fifth node include at least one of the following:
  • the fact that the target node is occupied and the preset condition is satisfied includes at least one of the following:
  • the number of nodes occupied by the target node is less than a second threshold
  • the number of points located in the space block corresponding to the target node in the second geometric information is less than a third threshold.
  • the device for encoding and processing point cloud geometric information provided in the embodiment of the present application can realize each process in the method embodiment in FIG. 4 , and details are not repeated here to avoid repetition.
  • the execution subject may be the device for decoding and processing geometric information of point cloud, or, the point cloud device for decoding and processing geometric information of point cloud is used to execute point A control module of a cloud geometric information decoding processing method.
  • the point cloud geometric information decoding processing device provided by the embodiment of the present application is described by taking the point cloud geometric information decoding processing device as an example to execute the point cloud geometric information decoding processing method.
  • FIG. 9 is a structural diagram of a point cloud geometric information decoding processing device provided by an embodiment of the present application. As shown in FIG. 9, the point cloud geometric information decoding processing device 900 includes:
  • the second division module 901 is configured to divide the second geometric information into a tree structure to obtain a second placeholder code, and the second geometric information is the reconstructed geometry of the reference frame point cloud corresponding to the Nth frame point cloud currently to be decoded information;
  • the second determining module 902 is configured to determine the occupancy of the first node and the neighbor nodes of the first node based on the second occupancy code, and determine the target context;
  • the first node is a tree corresponding to the second geometric information
  • the node corresponding to the second node in the structure, the second node is a child node to be decoded in the current node to be decoded in the tree structure corresponding to the first geometric information, and the first geometric information is the point cloud of the Nth frame Decode the geometric information corresponding to the node;
  • the decoding module 903 is configured to use the target context to perform entropy decoding on the geometric code stream corresponding to the second node to obtain a placeholder code corresponding to the second node;
  • the reconstruction module 904 is configured to perform multi-tree reconstruction based on the placeholder code corresponding to the second node, and obtain geometric information of the second node.
  • the second determination module 902 includes:
  • a second calculation unit configured to calculate a weighted sum of the number of nodes occupied by the first node and M neighbor nodes, where the M neighbor nodes are at least some neighbor nodes of the first node;
  • a second determining unit configured to determine the target context based on the weighted sum.
  • the decoding module 903 is specifically configured to perform the following operations:
  • Entropy decoding is performed on the placeholder code of the second node by using the context corresponding to the index value in the first set of context to obtain the placeholder code corresponding to the second node.
  • the M neighbor nodes include at least one of the following: co-planar neighbor nodes, collinear neighbor nodes, and co-point neighbor nodes.
  • the weight value of the first node is greater than or equal to the weight value of the coplanar neighbor node
  • the weight value of the coplanar neighbor node is greater than or equal to the weight value of the collinear neighbor node, so The weight value of the collinear neighbor nodes is greater than or equal to the weight value of the collinear neighbor nodes.
  • the target context includes a first set of contexts for inter-frame decoding or a second set of contexts for intra-frame decoding.
  • the second division module 901 is specifically configured to perform the following operations:
  • the first node queue includes nodes occupied by corresponding space blocks in the tree structure constructed based on the first geometric information
  • the second dummy code includes the dummy code of the first node.
  • the second division module 901 is further configured to: in the case that the current node to be decoded satisfies the isolated point decoding condition, and the current node to be decoded is a non-isolated node, tree the current node to be decoded The structure division is to obtain the child nodes of the current node to be decoded.
  • the second division module 901 is specifically configured to perform the following operations:
  • the first node queue includes nodes occupied by corresponding space blocks in the tree structure constructed based on the first geometric information
  • the second dummy code includes the dummy code of the first node.
  • the second division module 901 is further configured to: when the current node to be decoded satisfies the isolated point decoding condition and the current node to be decoded is a non-isolated node, based on the child nodes of the first node The occupancy status of the first node determines the occupancy code of the first node.
  • the second division module 901 is further configured to: store the occupancy code of the first node.
  • the outlier decoding conditions include:
  • the direct decoding identifier of the geometric header information corresponding to the Nth frame point cloud is a preset value
  • the spatial block corresponding to the current node to be decoded has side lengths in L directions greater than the preset minimum side length
  • the sum of the Morton code bits to be decoded at the target point is greater than the preset times of L
  • the target The points include points in the first geometric information located in the spatial block corresponding to the current node to be decoded, and L is a natural number
  • the target node is a node associated with the current node to be decoded among the decoded nodes.
  • the target node includes at least one of the following:
  • a child node of a fifth node where the fifth node is a node corresponding to the current node to be decoded in the tree structure corresponding to the second geometric information;
  • a child node of the neighbor node of the fifth node A child node of the neighbor node of the fifth node.
  • the neighbor nodes of the fifth node include at least one of the following:
  • the fact that the target node is occupied and the preset condition is satisfied includes at least one of the following:
  • the number of nodes occupied by the target node is less than a second threshold
  • the number of points located in the spatial block corresponding to the target node in the second geometric information is less than a third threshold.
  • the device for decoding and processing point cloud geometric information provided in the embodiment of the present application can realize each process in the method embodiment in FIG. 7 , and details are not repeated here to avoid repetition.
  • the device for encoding and processing point cloud geometric information and the device for decoding and processing point cloud geometric information 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 device may be a mobile terminal or a non-mobile terminal.
  • a mobile terminal may include but not limited to the types of terminals listed above, and a non-mobile terminal may be a server, a network attached storage (Network Attached Storage, NAS), a personal computer (Personal Computer, PC), a television (Television , TV), teller machines or self-service machines, etc., are not specifically limited in this embodiment of the present application.
  • the point cloud geometric information encoding processing device and the point cloud geometric information decoding processing device provided in the embodiment of the present application can realize the various processes of the method embodiments in Fig. 4 to Fig. 7 and achieve the same technical effect. In order to avoid repetition, I won't go into details here.
  • the embodiment of the present application also provides a communication device 1000, including a processor 1001, a memory 1002, and a program or instruction stored in the memory 1002 and operable on the processor 1001, for example, the program Or, when the instructions are executed by the processor 1001, the processes of the above-mentioned method for encoding and processing geometric information of point cloud or the method for decoding and processing of geometric information of point cloud 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 terminal, including a processor and a communication interface, and the processor is configured to perform the following operations: perform synchronous tree division on the first geometric information and the second geometric information, and obtain the information corresponding to the first geometric information
  • the first placeholder code and the second placeholder code corresponding to the second geometric information the first geometric information is obtained by preprocessing the geometric information of the Nth frame point cloud to be encoded currently, and N is an integer greater than 1
  • the second geometric information is the reconstruction geometric information of the reference frame point cloud corresponding to the Nth frame point cloud; according to the occupancy of the first node and the neighbor nodes of the first node, determine the target context;
  • the first node is the node corresponding to the second node in the tree structure corresponding to the second geometric information, and the second node is a child node to be encoded in the current node to be encoded in the tree structure corresponding to the first geometric information; using the The target context performs entropy encoding on the placeholder code of the second node.
  • the processor is configured to perform the following operations: divide the second geometric information into a tree structure to obtain a second placeholder code, the second geometric information is the reconstruction of the reference frame point cloud corresponding to the Nth frame point cloud currently to be decoded Geometric information; determine the occupancy of the first node and the neighbor nodes of the first node based on the second occupancy code, and determine the target context; the first node is the second node in the tree structure corresponding to the second geometric information The node corresponding to the node, the second node is a child node to be decoded in the current node to be decoded in the tree structure corresponding to the first geometric information, and the first geometric information is the geometry corresponding to the decoded node of the Nth frame point cloud information; using the target context to perform entropy decoding on the geometric code stream corresponding to the second node to obtain a placeholder code corresponding to the second node; perform multi-fork tree reconstruction based on the placeholder code corresponding to the second node to obtain Geometry information of the second node
  • FIG. 11 is a schematic diagram of a hardware structure of a terminal implementing various embodiments of the present application.
  • the terminal 1100 includes, but is not limited to: a radio frequency unit 1101, a network module 1102, an audio output unit 1103, an input unit 1104, a sensor 1105, a display unit 1106, a user input unit 1107, an interface unit 1108, a memory 1109, and a processor 1110. At least some parts.
  • the terminal 1100 may also include a power supply (such as a battery) for supplying power to various components, and the power supply may be logically connected to the processor 1110 through the power management system, so as to manage charging, discharging, and power consumption through the power management system. Management and other functions.
  • a power supply such as a battery
  • the terminal structure shown in FIG. 11 does not constitute a limitation on the terminal, and the terminal may include more or fewer components than shown in the figure, or combine some components, or arrange different components, which will not be repeated here.
  • the input unit 1104 may include a graphics processor (Graphics Processing Unit, GPU) and a microphone, and the graphics processor is used by an image capture device (such as a camera) in a video capture mode or an image capture mode.
  • the obtained image data of still picture or video is processed.
  • the display unit 1106 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 1107 includes a touch panel and other input devices. Touch panel 11071, also called 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 1101 receives the downlink data from the network side device, and processes it to the processor 1110; in addition, sends the uplink data to the network side device.
  • the radio frequency unit 1101 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 1109 can be used to store software programs or instructions as well as various data.
  • the memory 1109 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 1109 may include a high-speed random access memory, and may also include a non-transitory memory, wherein the non-transitory 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 disk storage device, flash memory device, or other non-transitory solid state storage device.
  • the processor 1110 may include one or more processing units; optionally, the processor 1110 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 1110 .
  • processor 1110 is configured to perform the following operations:
  • the first node is a node corresponding to the second node in the tree structure corresponding to the second geometric information
  • the second node is A child node to be encoded in the current node to be encoded in the tree structure corresponding to the first geometric information
  • Entropy encoding is performed on the placeholder code of the second node by using the target context.
  • processor 1110 is configured to perform the following operations:
  • the second geometric information is the reconstruction geometric information of the reference frame point cloud corresponding to the Nth frame point cloud currently to be decoded;
  • the first node corresponds to the second node in the tree structure corresponding to the second geometric information node
  • the second node is a child node to be decoded in the current node to be decoded in the tree structure corresponding to the first geometric information
  • the first geometric information is the geometric information corresponding to the decoded node of the Nth frame point cloud
  • processor 1110 can implement various processes implemented by the terminal in the method embodiments in FIGS. 4 and 7 . To avoid repetition, details are not repeated here.
  • the embodiment of the present application also provides a readable storage medium, the readable storage medium may be nonvolatile or volatile, the readable storage medium stores programs or instructions, and the programs or instructions are stored in When the processor executes, it realizes each process of the above embodiment of the method for encoding and processing geometric information of point cloud or the method for decoding and processing of geometric information of point cloud, and can achieve the same technical effect. To avoid repetition, details are not repeated here.
  • 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-mentioned geometric information encoding processing method of point cloud Or the various processes of the embodiment of the geometric information decoding processing method of the point cloud, and can achieve the same technical effect, in order to avoid repetition, no more details are given here.
  • the processor is the processor in the electronic 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 realize the above-mentioned geometric information encoding of the point cloud
  • 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 realize the above-mentioned geometric information encoding of the point cloud
  • chips mentioned in the embodiments of the present application may also be called system-on-chip, system-on-chip, system-on-a-chip, or system-on-a-chip.
  • the embodiment of the present application further provides a program product, the program product is stored in a non-transitory storage medium, and the program product is executed by at least one processor to implement the above-mentioned geometric information encoding processing method of point cloud or point cloud
  • the program product is executed by at least one processor to implement the above-mentioned geometric information encoding processing method of point cloud or point cloud
  • 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.
  • the methods of the above embodiments can be implemented by means of software plus a necessary general-purpose hardware platform, and of course also by hardware, but in many cases the former is better implementation.
  • the technical solution of the present application can be embodied in the form of computer software products, which are stored in a storage medium (such as ROM/RAM, magnetic disk, etc.) , optical disc), including several instructions to enable a terminal (which may be a mobile phone, computer, server, air conditioner, or base station, etc.) to execute the methods described in various embodiments of the present application.

Landscapes

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

Abstract

本申请公开了一种点云的几何信息编码处理方法、解码处理方法及相关设备,本申请实施例的点云的几何信息编码处理方法包括:对第一几何信息和第二几何信息进行同步树划分,获得第一几何信息对应的第一占位码和第二几何信息对应的第二占位码;第一几何信息基于当前待编码的第N帧点云的几何信息进行预处理得到,N为大于1的整数,第二几何信息为第N帧点云对应的参考帧点云的重建几何信息;根据第一节点和第一节点的邻居节点的占据情况,确定目标上下文;第一节点为第二几何信息对应的树结构中与第二节点对应的节点,第二节点为第一几何信息对应的树结构中当前待编码节点中待编码子节点;利用目标上下文对第二节点的占位码进行熵编码。

Description

点云的几何信息编码处理方法、解码处理方法及相关设备
相关申请的交叉引用
本申请主张在2021年06月11日在中国提交的中国专利申请No.202110656007.9的优先权,其全部内容通过引用包含于此。
技术领域
本申请属于点云处理技术领域,尤其涉及一种点云的几何信息编码处理方法、解码处理方法及相关设备。
背景技术
在点云数字音视频编解码标准(Audio Video coding Standard,AVS)编码器框架中,传统的探索模型(Explore model,EM)基于帧内编码框架提出一种帧间编码框架。现有帧间编码框架进行帧间预测过程中,帧内帧间编码使用同一套上下文,如果帧间对应节点为不占据,使用帧内的上下文。如果帧间对应节点为占据时,使用帧内预测,且该节点为占据的概率最大的上下文。当帧间对应节点为噪点时,将会导致帧间预测的准确率较差。
发明内容
本申请实施例提供一种点云的几何信息编码处理方法、解码处理方法及相关设备,能够解决现有的帧间编码框架进行帧间预测过程中,帧间预测的准确率较差的问题。
第一方面,提供了一种点云的几何信息编码处理方法,包括:
对第一几何信息和第二几何信息进行同步树划分,获得所述第一几何信息对应的第一占位码和所述第二几何信息对应的第二占位码;所述第一几何信息基于当前待编码的第N帧点云的几何信息进行预处理得到,N为大于1的整数,所述第二几何信息为所述第N帧点云对应的参考帧点云的重建几何信息;
根据第一节点和第一节点的邻居节点的占据情况,确定目标上下文;所 述第一节点为所述第二几何信息对应的树结构中与第二节点对应的节点,所述第二节点为所述第一几何信息对应的树结构中当前待编码节点中待编码子节点;
利用所述目标上下文对所述第二节点的占位码进行熵编码。
第二方面,提供了一种点云的几何信息解码处理方法,包括:
对第二几何信息进行树结构划分,获得第二占位码,所述第二几何信息为当前待解码的第N帧点云对应的参考帧点云的重建几何信息;
基于所述第二占位码确定第一节点和第一节点的邻居节点的占据情况,确定目标上下文;所述第一节点为所述第二几何信息对应的树结构中与第二节点对应的节点,所述第二节点为第一几何信息对应的树结构中当前待解码节点中待解码子节点,所述第一几何信息为所述第N帧点云已解码节点对应的几何信息;
利用所述目标上下文对所述第二节点对应的几何码流进行熵解码,获得第二节点对应的占位码;
基于所述第二节点对应的占位码进行多叉树重建,获得所述第二节点的几何信息。
第三方面,提供了一种点云的几何信息编码处理装置,包括:
第一划分模块,用于对第一几何信息和第二几何信息进行同步树划分,获得所述第一几何信息对应的第一占位码和所述第二几何信息对应的第二占位码;所述第一几何信息基于当前待编码的第N帧点云的几何信息进行预处理得到,N为大于1的整数,所述第二几何信息为所述第N帧点云对应的参考帧点云的重建几何信息;
第一确定模块,用于根据第一节点和第一节点的邻居节点的占据情况,确定目标上下文;所述第一节点为所述第二几何信息对应的树结构中与第二节点对应的节点,所述第二节点为所述第一几何信息对应的树结构中当前待编码节点中待编码子节点;
编码模块,用于利用所述目标上下文对所述第二节点的占位码进行熵编码。
第四方面,提供了一种点云的几何信息解码处理装置,包括:
第二划分模块,用于对第二几何信息进行树结构划分,获得第二占位码,所述第二几何信息为当前待解码的第N帧点云对应的参考帧点云的重建几何信息;
第二确定模块,用于基于所述第二占位码确定第一节点和第一节点的邻居节点的占据情况,确定目标上下文;所述第一节点为所述第二几何信息对应的树结构中与第二节点对应的节点,所述第二节点为第一几何信息对应的树结构中当前待解码节点中待解码子节点,所述第一几何信息为所述第N帧点云已解码节点对应的几何信息;
解码模块,用于利用所述目标上下文对所述第二节点对应的几何码流进行熵解码,获得第二节点对应的占位码;
重建模块,用于基于所述第二节点对应的占位码进行多叉树重建,获得所述第二节点的几何信息。
第五方面,提供了一种终端,该终端包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第一方面所述的方法的步骤。
第六方面,提供了一种终端,包括处理器及通信接口,其中,
所述处理器用于执行以下操作:
对第一几何信息和第二几何信息进行同步树划分,获得所述第一几何信息对应的第一占位码和所述第二几何信息对应的第二占位码;所述第一几何信息基于当前待编码的第N帧点云的几何信息进行预处理得到,N为大于1的整数,所述第二几何信息为所述第N帧点云对应的参考帧点云的重建几何信息;
根据第一节点和第一节点的邻居节点的占据情况,确定目标上下文;所述第一节点为所述第二几何信息对应的树结构中与第二节点对应的节点,所述第二节点为所述第一几何信息对应的树结构中当前待编码节点中待编码子节点;
利用所述目标上下文对所述第二节点的占位码进行熵编码;
或者,所述处理器用于执行以下操作:
对第二几何信息进行树结构划分,获得第二占位码,所述第二几何信息 为当前待解码的第N帧点云对应的参考帧点云的重建几何信息;
基于所述第二占位码确定第一节点和第一节点的邻居节点的占据情况,确定目标上下文;所述第一节点为所述第二几何信息对应的树结构中与第二节点对应的节点,所述第二节点为第一几何信息对应的树结构中当前待解码节点中待解码子节点,所述第一几何信息为所述第N帧点云已解码节点对应的几何信息;
利用所述目标上下文对所述第二节点对应的几何码流进行熵解码,获得第二节点对应的占位码;
基于所述第二节点对应的占位码进行多叉树重建,获得所述第二节点的几何信息。
第七方面,提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第一方面所述的方法的步骤,或者实现如第二方面所述的方法的步骤。
第八方面,本申请实施例提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现如第一方面所述的方法的步骤,或者实现如第二方面所述的方法的步骤。
第九方面,提供了一种计算机程序/程序产品,所述计算机程序/程序产品存储在非瞬态的存储介质中,所述计算机程序/程序产品被至少一个处理器执行以实现如第一方面所述的方法的步骤,或实现如第二方面所述的方法的步骤。
第十方面,提供一种通信设备,被配置为执行如第一方面所述的方法的步骤,或者,执行如第二方面所述的方法的步骤。
本申请实施例通过对第一几何信息和第二几何信息进行同步树划分,获得所述第一几何信息对应的第一占位码和所述第二几何信息对应的第二占位码;所述第一几何信息基于当前待编码的第N帧点云的几何信息进行预处理得到,N为大于1的整数,所述第二几何信息为所述第N帧点云对应的参考帧点云的重建几何信息;根据第一节点和第一节点的邻居节点的占据情况,确定目标上下文;所述第一节点为所述第二几何信息对应的树结构中与第二节点对应的节点,所述第二节点为所述第一几何信息对应的树结构中当前待 编码节点中待编码子节点;利用所述目标上下文对所述第二节点的占位码进行熵编码。由于通过第一节点的占据情况和第一节点的邻居的节点的占据情况确定当前待编码节点的目标上下文,相对于现有技术通过仅通过一个节点的占据情况确定上下文,本申请实施例可以提高帧间预测的准确率。
附图说明
图1是点云AVS编码器框架示意图;
图2是点云AVS解码器框架示意图;
图3是帧间编码框架示意图;
图4是本申请实施例提供的一种点云的几何信息编码处理方法的流程图;
图5是八叉树编码的处理流程示意图;
图6是利用第一套上下文进行熵编码的流程示意图;
图7是本申请实施例提供的一种点云的几何信息解码处理方法的流程图;
图8是本申请实施例提供的一种点云的几何信息编码处理装置的结构图;
图9是本申请实施例提供的一种点云的几何信息解码处理装置的结构图;
图10是本申请实施例提供的一种通信设备的结构图;
图11是本申请实施例提供的一种终端的结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”所区别的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”一 般表示前后关联对象是一种“或”的关系。
本申请实施例中的编解码方法对应的编解码端可以为终端,该终端也可以称作终端设备或者用户终端(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)或车载设备(Vehicle User Equipment,VUE)、行人终端(Pedestrian User Equipment,PUE)等终端侧设备,可穿戴式设备包括:智能手表、手环、耳机、眼镜等。需要说明的是,在本申请实施例并不限定终端的具体类型。
为了方便理解,以下对本申请实施例涉及的一些内容进行说明:
如图1所示,在点云AVS编码器框架中,点云的几何信息和属性信息是分开编码的。首先对几何信息进行坐标转换,使点云全部包含在一个包围盒(bounding box)中,然后再进行坐标量化。量化主要起到缩放的作用,由于量化会对几何坐标取整,使得一部分点的几何信息相同,称为重复点,根据参数来决定是否移除重复点,量化和移除重复点这两个步骤又被称为体素化过程。接下来,对包围盒进行多叉树划分,例如八叉树、四叉树或二叉树划分。在基于多叉树的几何信息编码框架中,将包围盒八等分为8个子立方体,对非空的子立方体继续进行划分,直到划分得到叶子节点为1x1x1的单位立方体时停止划分,对叶子结点中的点数进行编码,生成二进制码流。目前AVS几何划分顺序包括两种:
1、广度优先遍历顺序:对几何进行八叉树划分时,首先对当前同一层的节点进行划分,直至划分完当前层上的所有节点,才会继续划分下一层的节点,最终当划分得到的叶子结点为1x1x1的单位立方体时停止划分。
2、深度优先遍历顺序:对几何进行八叉树划分时,首先会对当前层的第一个节点进行不断地划分,直到划分得到的叶子结点为1x1x1的单位立方体时停止划分当前节点。按照该顺序,对当前层后续的节点进行划分,直至当前层上的节点划分完成停止。
几何编码完成后,对几何信息进行重建,用于后面的重着色。属性编码主要针对的是颜色和反射率信息。首先根据参数判断是否进行颜色空间转换,若进行颜色空间转换,则将颜色信息从红绿蓝(Red Green Blue,RGB)颜色空间转换到亮度色彩(YUV)颜色空间。然后,利用原始点云对几何重建点云进行重着色,使得未编码的属性信息与重建的几何信息对应起来。在颜色信息编码中,通过莫顿码对点云进行排序后,利用几何空间关系搜索待预测点的最近邻,并利用所找到邻居的重建属性值对待预测点进行预测得到预测属性值,然后将真实属性值和预测属性值进行差分得到预测残差,最后对预测残差进行量化并编码,生成二进制码流。
可选地,AVS解码流程与编码流程对应,具体的,AVS解码器框架如图2所示。
AVS的EM模型基于上述帧内编码框架提出一种帧间编码框架,如图3所示。具体编码流程如下:
设置两种帧类型:I帧和P帧,每个序列首帧为I帧,仅使用帧内预测,后续所有帧为P帧,进行前向帧间预测,并均以前一帧为参考帧。同时增加帧间标志位(interMode),用于控制是否使用帧间预测工具;
输入当前待编码帧,前一帧已编码点云作为参考帧,将两帧进行同步树划分,并将参考帧中对应位置的节点作为预测块,预测块的占用信息将被作为上下文用于提升待编码块的占用码熵编码效率;
对于得到的预测块,将其与当前待编码块进行相同的子块划分操作,分别得到预测块和当前块的占用码信息。
可选地,解码的流程与编码流程对应,在此不再赘述。
下面结合附图,通过一些实施例及其应用场景对本申请实施例提供的点云的几何信息编码处理方法进行详细地说明。
请参见图4,图4是本申请实施例提供的一种点云的几何信息编码处理方法的流程图,如图4所示,包括以下步骤:
步骤401,对第一几何信息和第二几何信息进行同步树划分,获得所述第一几何信息对应的第一占位码和所述第二几何信息对应的第二占位码;所述第一几何信息基于当前待编码的第N帧点云的几何信息进行预处理得到, N为大于1的整数,所述第二几何信息为所述第N帧点云对应的参考帧点云的重建几何信息;
本申请实施例中,对第一几何信息和第二几何信息进行同步树划分可以理解为,对第二几何信息进行树结构划分时,参考第一几何信息的树结构进行同步划分,即对第二几何信息对应的树结构中的某一节点是否划分子节点,需要与第一几何信息对应的树结构的对应节点进行同步。应理解,在本申请实施例中,树结构划分可以理解为多叉树结构划分,例如可以为八叉树划分、四叉树划分和二叉树划分等。
需要说明的是,上述参考帧点云为已经编码的至少一帧点云,具体的,可以在每一帧点云编码完成后,进行几何信息的重建,获得重建几何信息,并开辟内存保存每一帧已编码点云对应的重建几何信息。在确定第N帧点云对应的参考帧点云后,可以对该第N帧点云的几何信息进行预处理,获得第一几何信息。
可选地,上述预处理是指在进行同步树划分前进行的坐标平移和量化处理等。具体的,可以对第N帧点云的几何信息进行坐标平移、量化处理和去重处理后得到上述第N帧点云对应的第一几何信息。
步骤402,根据第一节点和第一节点的邻居节点的占据情况,确定目标上下文;所述第一节点为所述第二几何信息对应的树结构中与第二节点对应的节点,所述第二节点为所述第一几何信息对应的树结构中当前待编码节点中待编码子节点;
本申请实施例中,第一节点的占据情况可以包括第一节点是否被占据,以及第一节点对应的空间块包含的第二几何信息的点的数量。其中,在第一节点对应的空间块包含第二几何信息的至少一个点时,表示该第一节点被占据,在第一节点对应的空间块未包含第二几何信息的点,表示该第一节点未被占据。由于通过第一节点的占据情况和第一节点的邻居的节点的占据情况确定当前待编码节点的目标上下文,相对于现有技术通过仅通过一个节点的占据情况确定上下文,可以提高帧间预测的概率。
步骤403,利用所述目标上下文对所述第二节点的占位码进行熵编码。
本申请实施例中,在对当前待编码节点进行多叉树划分后,可以获得当 前待编码节点的占位码,然后确定每一子节点对应的目标上下文,从而对每一节点子节点的占位码进行熵编码。
本申请实施例通过对第一几何信息和第二几何信息进行同步树划分,获得所述第一几何信息对应的第一占位码和所述第二几何信息对应的第二占位码;所述第一几何信息基于当前待编码的第N帧点云的几何信息进行预处理得到,N为大于1的整数,所述第二几何信息为所述第N帧点云对应的参考帧点云的重建几何信息;根据第一节点和第一节点的邻居节点的占据情况,确定目标上下文;所述第一节点为所述第二几何信息对应的树结构中与第二节点对应的节点,所述第二节点为所述第一几何信息对应的树结构中当前待编码节点中待编码子节点;利用所述目标上下文对所述第二节点的占位码进行熵编码。由于通过第一节点的占据情况和第一节点的邻居的节点的占据情况确定当前待编码节点的目标上下文,相对于现有技术通过仅通过一个节点的占据情况确定上下文,本申请实施例可以提高帧间预测的准确率。
可选地,在一些实施例中,所述根据第一节点和第一节点的邻居节点的占据情况,确定目标上下文的步骤,包括:
计算第一节点和M个邻居节点中被占据的节点数的加权和,所述M个邻居节点为所述第一节点的至少部分邻居节点;
基于所述加权和确定所述目标上下文。
本申请实施例中,假设第一节点和M个邻居节点中某一节点被占据,对应的值可以设置为1,未被占据设置为0,基于每一节点对应的值乘积对应的权重即可获得上述加权和。
可选地,在一些实施例中,上述目标上下文可以包括用于帧间编码的第一套上下文或用于帧内编码的第二套上下文。其中,第一套上下文可以通过帧间对应节点的邻居节点占据模式进行设计,第二套上下文可以是使用帧内的上下文。
应理解,在本申请实施例中,可以将上述加权和与某一阈值进行比较确定采用第一套上下文还是第二套上下文。例如可以在加权和值大于该阈值时,使用第一套上下文进行熵编码,在加权和值小于或等于该阈值时,使用第二套上下文进行熵编码。
可选地,在一些实施例中,在所述目标上下文包括用于帧间编码的第一套上下文的情况下,利用所述目标上下文对所述第二节点的占位码进行熵编码的步骤,包括:
基于所述加权和以及第三节点的占据情况和第四节点的占据情况是否相同确定索引值,所述第三节点为所述第一节点的前一个节点,所述第四节点为所述第二节点的前一个节点;
利用所述第一套上下文中与所述索引值对应的上下文,对所述第二节点的占位码进行熵编码。
本申请实施例中,上述加权和可以用于确定索引值的一部分比特序列,例如将加权和除以2得到索引(CtxIdx)。第三节点的占据情况和第四节点的占据情况是否相同确定索引值的另一部分比特序列,例如,基于是否相同确定对应的标识值sameFlag,sameFlag为1表示相同,sameFlag等于0表示不同。基于CtxIdx和sameFlag来索引到对应的上下文,并进行熵编码。由于通过前一个节点与几何信息与该前一个节点对应的节点是否相同来确定当前待编码节点的上下文,从而充分考虑到帧间预测的准确度。
可选地,在一些实施例中,对于当前待编码节点的中的第一个子节点,可以设置sameFlag为默认值。在当前待编码节点的子节点进行熵编码完成后,可以判断该子节点与第二几何信息对应的节点的占据情况是否相同,以便于在下一个子节点进行熵编码。
可选地,在一些实施例中,所述M个邻居节点包括以下至少一项:共面的邻居节点、共线的邻居节点和共点的邻居节点。
本申请实施例中,M个邻居节点的类型可以根据实际需要进行设置,以下将以M个邻居节点包括共面的邻居节点、共线的邻居节点和共点的邻居节点为例进行说明。进一步的,还可以根据第一节点以及第一节点与第二节点的相关程度设置对应的权重,例如,所述第一节点的权重值大于或等于所述共面的邻居节点权重值,所述共面的邻居节点的权重值大于或等于所述共线的邻居节点的权重值,所述共线的邻居节点的权重值大于或等于共点的邻居节点的权重值。
假设第一节点的权重值为Wcur,第一节点共面的邻居节点的权重值为 Wf,第一节的共线的邻居节点的权重值为Wl,第一节点共点的邻居节点的权重值为Wp,第一节点被占据的数量为OCcur,第一节点共面的邻居节点被占据的数量为OCf,第一节点共线的邻居节点被占据的数量为OCl,第一节点共点的邻居节点被占据的数量为OCp。此时,则有加权和值count满足:
count=OCcur*Wcur+OCf*Wf+OCl*Wl++OCp*Wp;
其中,Wcur≥Wf≥Wl≥Wp。
需要说明的是,在对第一几何信息进行编码时,可以首先确定根节点,存储于第一节点队列中。应理解,该根节点对应一个包围盒,包含有第一几何信息中的所有点。然后对根节点进行树结构划分,获得子节点,基于子节点的占据情况,将被占据的子节点存储于第一节点队列中。此时,可以将被占据的子节点添加至第一节点队列中,具体添加到第一节点队列的位置可以位于第一节点队列的最后一个节点之后,也可以位于当前进行结构树划分的节点之后。在进行编码时,可以依次遍历第一节点队列的节点作为当前待编码节点,进行编码操作。
可选地,在一些实施例中,对所述第一几何信息进行树结构划分,获得所述第一几何信息对应的第一占位码,包括:
遍历第一节点队列中的节点,获得所述当前待编码节点,所述第一节点队列包括基于所述第一几何信息已构建的树结构中对应的空间块被占据的节点;
确定所述当前待编码节点是否满足孤立点编码条件;
在所述当前待编码节点不满足孤立点编码条件的情况下,对所述当前待编码节点进行树结构划分,获得所述当前待编码节点的子节点;
基于所述当前待编码节点的子节点的占据情况确定所述当前待编码节点的占位码;
其中,所述第一占位码包括所述当前待编码节点的占位码。
本申请实施例中,当前待编码节点可以理解为根节点、子节点或叶子节点。应理解,在对当前待编码节点进行结构树划分时,需要对上述第二几何信息对应的结构树中与当前待编码节点对应的节点进行同步树划分。具体地,可以首先判断当前待编码节点是否满足孤立点编码条件,若满足孤立点条件, 则进入孤立点编码模式,若不满足足孤立点编码条件,则进入占位码编码模式。在进入占位码编码模式后,可以首先对所述当前待编码节点进行树结构划分,获得所述当前待编码节点的子节点,从而进一步确定当前待编码节点的占位码。
可选地,在一些实施例中,所述确定所述当前待编码节点是否满足孤立点编码条件的步骤之后,所述方法还包括:
在所述当前待编码节点满足孤立点编码条件,且所述当前待编码节点为非孤立节点的情况下,对所述当前待编码节点进行树结构划分,获得所述当前待编码节点的子节点。
在本申请实施例中,在进入孤立点编码模式后,首先确定当前待编码节点是否为孤立节点。应理解,是否为孤立节点的条件可以根据实际需要进行设置,例如,在一些实施例中,第N帧点云包括小于预设数量的点位于当前待编码节点对应的空间块内的情况下,可以认为当前待编码节点为孤立节点。其中,当多个点位于孤立节点对应的空间块内,此时该多个点的几何信息可以部分或全部相同,也可以全部不同,当几何信息相同时,对应的属性信息不同。
当然在一些实施例中,还可以首先对当前待编码节点进行树结构划分,然后确定是否满足孤立点,例如,在一些实施例中,对所述第一几何信息进行树结构划分,获得所述第一几何信息对应的第一占位码,包括:
遍历第一节点队列中的节点,获得所述当前待编码节点,所述第一节点队列包括基于所述第一几何信息已构建的树结构中对应的空间块被占据的节点;
对所述当前待编码节点进行树结构划分,获得所述当前待编码节点的子节点;
确定所述当前待编码节点是否满足孤立点编码条件;
在所述当前待编码节点不满足孤立点编码条件的情况下,基于所述当前待编码节点的子节点的占据情况确定所述当前待编码节点的占位码;
其中,所述第一占位码包括所述当前待编码节点的占位码。
本申请实施例中,由于首先进行树结构划分,从而可以根据第二几何信 息对应的树结构中与所述当前待编码节点对应的节点的子节点的占据情况确定当前待编码节点是否满足孤立点编码条件。
可选地,在一些实施例中,所述确定所述当前待编码节点是否满足孤立点编码条件的步骤之后,所述方法还包括:
在所述当前待编码节点满足孤立点编码条件,且所述当前待编码节点为非孤立节点的情况下,基于所述当前待编码节点的子节点的占据情况确定所述当前待编码节点的占位码。
在本申请实施例中,在进入孤立点编码模式后,首先确定当前待编码节点是否非孤立节点。应理解,是否为孤立节点的条件可以根据实际需要进行设置,例如,在一些实施例中,第N帧点云包括小于预设数量的点位于当前待编码节点对应的空间块内的情况下,可以认为当前待编码节点为孤立节点。其中,当多个点位于孤立节点对应的空间块内,此时该多个点的几何信息可以部分或全部相同,也可以全部不同,当几何信息相同时,对应的属性信息不同。
需要说明的是,在一些实施例中,若进行树结构划分位于孤立点编码条件判断之前时,该孤立点编码条件还可以用于确定是否根据第一节点和第一节点的邻居节点的占据情况,确定目标上下文。即在进行树结构划分后即可确定占位码,然后进行孤立点编码条件判断,在满足孤立点编码条件的情况下,进入孤立点编码模式,在不满足孤立点编码条件的情况下,进入占位编码模式。在进入占位码编码模式后,可以根据第一节点和第一节点的邻居节点的占据情况,确定目标上下文。
可选地,在一些实施例中,对所述第二几何信息进行树结构划分,获得所述第二几何信息对应的第二占位码,包括:
对所述第二几何信息对应的树结构中与当前待编码节点对应的第五节点进行结构树划分,获得所述第五节点的占据码;所述第二占据码包括所述第五节点的占据码
存储所述第五节点的占据码。
本申请实施例中,由于对第五节点的占据码进行存储,可以获取到第五节点的同层邻居节点的占据情况,还可以获取到所述第五节点的父节点对应 的同层节点的子节点的被占据情况。从而可以进一步提升孤立点编码条件判断的准确性。
需要说明的是,上述孤立点条件的具体内容可以根据实际情况进行设置,例如,在一些实施例中,所述孤立点编码条件包括:
所述第N帧点云对应的几何头信息的直接编码标识符为预设值;
在所述当前待编码节点对应的空间块存在L个方向的边长大于预设最小边长的情况下,目标点的待编码莫顿码位数之和大于L的预设倍,所述目标点包括所述第一几何信息中位于所述当前待编码节点对应的空间块内的点,L为自然数;
目标节点被占据的情况满足预设条件;
其中,所述目标节点为已编码节点中与所述当前待编码节点关联的节点。
本申请实施例中,上述预设倍可以为2倍。
应理解,在本申请实施例中,设置了目标节点被占据的情况满足预设条件作为孤立点编码条件的一部分,从而可以根据第二几何信息中节点的稀疏情况,确定当前节点是否满足孤立点编码条件。例如,参考帧重建点云对应节点比较稀疏,那么当前帧节点也大概率是稀疏的,所以该节点为孤立点的概率比较大。由于在进入孤立点编码模式后,需要对每一个进入孤立点编码模式的节点编码标志位singleNodeFlag,用于确定是否为真实的孤立节点,例如可以通过singleNodeFlag=1表示当前待编码的节点为真实的孤立节点,通过singleNodeFlag=0表示当前待编码的节点为非孤立节点。通过当前节点在已编码点云帧中的对应位置节点及其邻居位置节点的占据模式来推断当前帧节点进入孤立点编码模式的节点是否大概率是一个真正的孤立点,通过提升进入孤立点编码的节点是真正孤立点的概率,降低编码singleNodeFlag=0的数量,同时singleNodeFlag=1的数量几乎不变。因此,本申请实施例中可以减少对singleNodeFlag的编码数据,从而降低编码码流。
可选地,所述目标节点包括以下至少一项:
第五节点的子节点,所述第五节点为所述第二几何信息对应的树结构中与所述当前待编码节点对应的节点;
第五节点的邻居节点;
第五节点的邻居节点的子节点。
可选地,第五节点的邻居节点包括以下至少一项:
所述第五节点的同层节点;
所述第五节点的父节点对应的同层节点的子节点。
可选地,所述目标节点被占据的情况满足预设条件包括以下至少一项:
所述目标节点被占据的节点数小于第二阈值;
所述第二几何信息中位于所述目标节点对应的空间块内的点的数量小于第三阈值。
为了更好的理解本申请,以下将以八叉树编码为例进行说明。首先开辟一部分内存保存已编码帧得到的重建点云作为当前帧点云的参考帧重建点云记为pointcloudPred。如图5所示,八叉树编码的处理流程如下:
1、对当前帧点云pointcloud进行量化得到当前帧量化点云记为pointcloudQua;
2、对当前帧量化点云pointcloudQua和参考帧重建点云pointcloudPred分别进行八叉树划分,得到八叉树的占据码分别记为occupancy和occupancyPred,8位占据码的每一位分别记为Oi和OPi,其中i=0…7。并分别将当前点云和参考点云的8位占据码缓存到哈希表中,便于后面为节点寻找邻居信息。
3、判断当前节点是否满足孤立点编码条件,如果满足孤立点编码条件则判断该节点是否是真正的孤立点,如果是孤立点则编码孤立点标志singleNodeFlag=1,并且编码孤立点坐标,否则编码标志singleNodeFlag=0,进行占位码编码。
4、在哈希表缓存中查参考帧对应子节点的共面共线共点的26个邻居节点的占位模式或26个邻居节点的子集的占位模式,并且对参考帧对应子节点及其邻居节点被占据的数量进行加权,假设参考帧对应子节点的权重是Wcur,参考帧对应子节点的共面邻居节点权重是Wf,参考帧对应子节点的共线邻居节点权重是Wl,参考帧对应子节点的共点邻居节点权重是Wp,那么可以得到加权值count=OCcur*Wcur+OCf*Wf+OCl*Wl++OCp*Wp,其中OC代表参考帧对应子节点被占据的数量,OCf代表参考帧对应子节点的共面邻居节点 被占据的数量,OCl代表参考帧对应子节点的共线邻居节点被占据的数量,OCl代表参考帧对应子节点的共点邻居节点被占据的数量,并且Wcur≥Wf≥Wl≥Wp。比较count和阈值TH的大小。上述权重和阈值都可以进行调整。参考帧对应子节点可以理解为参考帧重建点云对应的节点中与当前进行熵编码的子节点对应的节点。
5、如果count>TH使用第一套上下文进行熵编码,否则使用第二套上下文进行熵编码。其中第一套上下文可以通过帧间对应节点的邻居节点占据模式进行设计,第二套上下文可以是使用帧内的上下文。
可选地,当使用第一套上下文进行熵编码时,编码流程如图6所示,主要流程说明如下:
首先通过占位码权重OccupancyWeight映射得到上下文索引号,设为CtxIdx,其中的一种做法是将OccupancyWeight除2得到索引;
初始化sameFlag为真(true),通过CtxIdx和sameFlag来索引对应的上下文,并进行熵编码。
判断当前子节点与参考帧对应子节点的占据情况是否相同,如果不相同将sameFlag置为假(false),否则将sameFlag置为true。再进行后续子节点的编码。
本申请实施例中,通过前一个子节点及其参考帧对应子节点的占据情况是否相同来确定当前待编码子节点的上下文,充分考虑到帧间预测的准确度,可以更加有效的进行预测。
请参见图7,图7是本申请实施例提供的一种点云的几何信息解码处理方法的流程图,如图7所示,包括以下步骤:
步骤701,对第二几何信息进行树结构划分,获得第二占位码,所述第二几何信息为当前待解码的第N帧点云对应的参考帧点云的重建几何信息;
步骤702,基于所述第二占位码确定第一节点和第一节点的邻居节点的占据情况,确定目标上下文;所述第一节点为所述第二几何信息对应的树结构中与第二节点对应的节点,所述第二节点为第一几何信息对应的树结构中当前待解码节点中待解码子节点,所述第一几何信息为所述第N帧点云已解码节点对应的几何信息;
步骤703,利用所述目标上下文对所述第二节点对应的几何码流进行熵解码,获得第二节点对应的占位码;
步骤704,基于所述第二节点对应的占位码进行多叉树重建,获得所述第二节点的几何信息。
应理解,本申请实施例中,第一几何信息可以基于所述第N帧点云对应的几何码流经过熵解码和多叉树重建获得。
可选地,所述基于所述第二占位码确定第一节点和第一节点的邻居节点的占据情况,确定目标上下文的步骤,包括:
计算第一节点和M个邻居节点中被占据的节点数的加权和,所述M个邻居节点为所述第一节点的至少部分邻居节点;
基于所述加权和确定所述目标上下文。
可选地,在所述目标上下文包括用于帧间解码的第一套上下文的情况下,利用所述目标上下文对所述第二节点对应的几何码流进行熵解码,获得所述第二节点对应的占位码的步骤,包括:
基于所述加权和以及第三节点的占据情况和第四节点的占据情况是否相同确定索引值,所述第三节点为所述第一节点的前一个节点,所述第四节点为所述第二节点的前一个节点;
利用所述第一套上下文中与所述索引值对应的上下文,对所述第二节点的占位码进行熵解码,获得所述第二节点对应的占位码。
可选地,所述M个邻居节点包括以下至少一项:共面的邻居节点、共线的邻居节点和共点的邻居节点。
可选地,所述第一节点的权重值大于或等于所述共面的邻居节点权重值,所述共面的邻居节点的权重值大于或等于所述共线的邻居节点的权重值,所述共线的邻居节点的权重值大于或等于共点的邻居节点的权重值。
可选地,所述目标上下文包括用于帧间解码的第一套上下文或用于帧内解码的第二套上下文。
可选地,对所述第一几何信息进行树结构划分,获得所述第一几何信息对应的第一占位码,包括:
遍历第一节点队列中的节点,获得所述当前待解码节点,所述第一节点 队列包括基于所述第一几何信息已构建的树结构中对应的空间块被占据的节点;
确定所述当前待解码节点是否满足孤立点解码条件;
在所述当前待解码节点不满足孤立点解码条件的情况下,对所述第一节点进行树结构划分,获得所述第一节点的子节点;
基于所述第一节点的子节点的占据情况确定所述第一节点的占位码;
其中,所述第二占位码包括所述第一节点的占位码。
可选地,所述确定所述当前待解码节点是否满足孤立点解码条件的步骤之后,所述方法还包括:
在所述当前待解码节点满足孤立点解码条件,且所述当前待解码节点为非孤立节点的情况下,对所述当前待解码节点进行树结构划分,获得所述当前待解码节点的子节点。
可选地,对所述第一几何信息进行树结构划分,获得所述第一几何信息对应的第一占位码,包括:
遍历第一节点队列中的节点,获得所述当前待解码节点,所述第一节点队列包括基于所述第一几何信息已构建的树结构中对应的空间块被占据的节点;
对所述第一节点进行树结构划分,获得所述第一节点的子节点;
确定所述当前待解码节点是否满足孤立点解码条件;
在所述当前待解码节点不满足孤立点解码条件的情况下,基于所述第一节点的子节点的占据情况确定所述第一节点的占位码;
其中,所述第二占位码包括所述第一节点的占位码。
可选地,所述确定所述当前待解码节点是否满足孤立点解码条件的步骤之后,所述方法还包括:
在所述当前待解码节点满足孤立点解码条件,且所述当前待解码节点为非孤立节点的情况下,基于所述第一节点的子节点的占据情况确定所述第一节点的占位码。
可选地,所述方法还包括:
存储所述第一节点的占位码。
可选地,所述孤立点解码条件包括:
所述第N帧点云对应的几何头信息的直接解码标识符为预设值;
在所述当前待解码节点对应的空间块存在L个方向的边长大于预设最小边长的情况下,目标点的待解码莫顿码位数之和大于L的预设倍,所述目标点包括所述第一几何信息中位于所述当前待解码节点对应的空间块内的点,L为自然数;
目标节点被占据的情况满足预设条件;
其中,所述目标节点为已解码节点中与所述当前待解码节点关联的节点。
可选地,所述目标节点包括以下至少一项:
第五节点的子节点,所述第五节点为所述第二几何信息对应的树结构中与所述当前待解码节点对应的节点;
第五节点的邻居节点;
第五节点的邻居节点的子节点。
可选地,第五节点的邻居节点包括以下至少一项:
所述第五节点的同层节点;
所述第五节点的父节点对应的同层节点的子节点。
可选地,所述目标节点被占据的情况满足预设条件包括以下至少一项:
所述目标节点被占据的节点数小于第二阈值;
所述第二几何信息中位于所述目标节点对应的空间块内的点的数量小于第三阈值。
需要说明的是,本实施例作为图4所示的实施例对应的解码端的实施方式,解码过程为编码过程的逆过程,其具体的实施方式可以参见图4所示的实施例相关说明,以及达到相同的有益效果,为了避免重复说明,此处不再赘述。
需要说明的是,本申请实施例提供的点云的几何信息编码处理方法,执行主体可以为点云的几何信息编码处理装置,或者,该点云的几何信息编码处理装置中的用于执行点云的几何信息编码处理方法的控制模块。本申请实施例中以点云的几何信息编码处理装置执行点云的几何信息编码处理方法为例,说明本申请实施例提供的点云的几何信息编码处理装置。
请参见图8,图8是本申请实施例提供的一种点云的几何信息编码处理装置的结构图,如图8所示,点云的几何信息编码处理装置800包括:
第一划分模块801,用于对第一几何信息和第二几何信息进行同步树划分,获得所述第一几何信息对应的第一占位码和所述第二几何信息对应的第二占位码;所述第一几何信息基于当前待编码的第N帧点云的几何信息进行预处理得到,N为大于1的整数,所述第二几何信息为所述第N帧点云对应的参考帧点云的重建几何信息;
第一确定模块802,用于根据第一节点和第一节点的邻居节点的占据情况,确定目标上下文;所述第一节点为所述第二几何信息对应的树结构中与第二节点对应的节点,所述第二节点为所述第一几何信息对应的树结构中当前待编码节点中待编码子节点;
编码模块803,用于利用所述目标上下文对所述第二节点的占位码进行熵编码。
可选地,所述第一确定模块802包括:
第一计算单元,用于计算第一节点和M个邻居节点中被占据的节点数的加权和,所述M个邻居节点为所述第一节点的至少部分邻居节点;
第一确定单元,用于基于所述加权和确定所述目标上下文。
可选地,在所述目标上下文包括用于帧间编码的第一套上下文的情况下,所述编码模块803具体用于执行以下操作:
基于所述加权和以及第三节点的占据情况和第四节点的占据情况是否相同确定索引值,所述第三节点为所述第一节点的前一个节点,所述第四节点为所述第二节点的前一个节点;
利用所述第一套上下文中与所述索引值对应的上下文,对所述第二节点的占位码进行熵编码。
可选地,所述M个邻居节点包括以下至少一项:共面的邻居节点、共线的邻居节点和共点的邻居节点。
可选地,所述第一节点的权重值大于或等于所述共面的邻居节点权重值,所述共面的邻居节点的权重值大于或等于所述共线的邻居节点的权重值,所述共线的邻居节点的权重值大于或等于共点的邻居节点的权重值。
可选地,所述目标上下文包括用于帧间编码的第一套上下文或用于帧内编码的第二套上下文。
可选地,第一划分模块801具体用于执行以下操作:
遍历第一节点队列中的节点,获得所述当前待编码节点,所述第一节点队列包括基于所述第一几何信息已构建的树结构中对应的空间块被占据的节点;
确定所述当前待编码节点是否满足孤立点编码条件;
在所述当前待编码节点不满足孤立点编码条件的情况下,对所述当前待编码节点进行树结构划分,获得所述当前待编码节点的子节点;
基于所述当前待编码节点的子节点的占据情况确定所述当前待编码节点的占位码;
其中,所述第一占位码包括所述当前待编码节点的占位码。
可选地,所述第一划分模块801还用于:在所述当前待编码节点满足孤立点编码条件,且所述当前待编码节点为非孤立节点的情况下,对所述当前待编码节点进行树结构划分,获得所述当前待编码节点的子节点。
可选地,第一划分模块801具体用于执行以下操作:
遍历第一节点队列中的节点,获得所述当前待编码节点,所述第一节点队列包括基于所述第一几何信息已构建的树结构中对应的空间块被占据的节点;
对所述当前待编码节点进行树结构划分,获得所述当前待编码节点的子节点;
确定所述当前待编码节点是否满足孤立点编码条件;
在所述当前待编码节点不满足孤立点编码条件的情况下,基于所述当前待编码节点的子节点的占据情况确定所述当前待编码节点的占位码;
其中,所述第一占位码包括所述当前待编码节点的占位码。
可选地,第一划分模块801具体用于执行以下操作:在所述当前待编码节点满足孤立点编码条件,且所述当前待编码节点为非孤立节点的情况下,基于所述当前待编码节点的子节点的占据情况确定所述当前待编码节点的占位码。
可选地,第一划分模块801还用于执行以下操作:
对所述第二几何信息对应的树结构中与当前待编码节点对应的第五节点进行结构树划分,获得所述第五节点的占据码;所述第二占据码包括所述第五节点的占据码
存储所述第五节点的占据码。
可选地,所述孤立点编码条件包括:
所述第N帧点云对应的几何头信息的直接编码标识符为预设值;
在所述当前待编码节点对应的空间块存在L个方向的边长大于预设最小边长的情况下,目标点的待编码莫顿码位数之和大于L的预设倍,所述目标点包括所述第一几何信息中位于所述当前待编码节点对应的空间块内的点,L为自然数;
目标节点被占据的情况满足预设条件;
其中,所述目标节点为已编码节点中与所述当前待编码节点关联的节点。
可选地,所述目标节点包括以下至少一项:
第五节点的子节点,所述第五节点为所述第二几何信息对应的树结构中与所述当前待编码节点对应的节点;
第五节点的邻居节点;
第五节点的邻居节点的子节点。
可选地,第五节点的邻居节点包括以下至少一项:
所述第五节点的同层节点;
所述第五节点的父节点对应的同层节点的子节点。
可选地,所述目标节点被占据的情况满足预设条件包括以下至少一项:
所述目标节点被占据的节点数小于第二阈值;
所述第二几何信息中位于所述目标节点对应的空间块内的点的数量小于第三阈值。
本申请实施例提供的点云的几何信息编码处理装置能够实现图4的方法实施例中各个过程,为避免重复,这里不再赘述。
需要说明的是,本申请实施例提供的点云的几何信息解码处理方法,执行主体可以为点云的几何信息解码处理装置,或者,该点云的几何信息解码 处理装置中的用于执行点云的几何信息解码处理方法的控制模块。本申请实施例中以点云的几何信息解码处理装置执行点云的几何信息解码处理方法为例,说明本申请实施例提供的点云的几何信息解码处理装置。
请参见图9,图9是本申请实施例提供的一种点云的几何信息解码处理装置的结构图,如图9所示,点云的几何信息解码处理装置900包括:
第二划分模块901,用于对第二几何信息进行树结构划分,获得第二占位码,所述第二几何信息为当前待解码的第N帧点云对应的参考帧点云的重建几何信息;
第二确定模块902,用于基于所述第二占位码确定第一节点和第一节点的邻居节点的占据情况,确定目标上下文;所述第一节点为所述第二几何信息对应的树结构中与第二节点对应的节点,所述第二节点为第一几何信息对应的树结构中当前待解码节点中待解码子节点,所述第一几何信息为所述第N帧点云已解码节点对应的几何信息;
解码模块903,用于利用所述目标上下文对所述第二节点对应的几何码流进行熵解码,获得第二节点对应的占位码;
重建模块904,用于基于所述第二节点对应的占位码进行多叉树重建,获得所述第二节点的几何信息。
可选地,所述第二确定模块902包括:
第二计算单元,用于计算第一节点和M个邻居节点中被占据的节点数的加权和,所述M个邻居节点为所述第一节点的至少部分邻居节点;
第二确定单元,用于基于所述加权和确定所述目标上下文。
可选地,在所述目标上下文包括用于帧间解码的第一套上下文的情况下,所述解码模块903具体用于执行以下操作:
基于所述加权和以及第三节点的占据情况和第四节点的占据情况是否相同确定索引值,所述第三节点为所述第一节点的前一个节点,所述第四节点为所述第二节点的前一个节点;
利用所述第一套上下文中与所述索引值对应的上下文,对所述第二节点的占位码进行熵解码,获得所述第二节点对应的占位码。
可选地,所述M个邻居节点包括以下至少一项:共面的邻居节点、共线 的邻居节点和共点的邻居节点。
可选地,所述第一节点的权重值大于或等于所述共面的邻居节点权重值,所述共面的邻居节点的权重值大于或等于所述共线的邻居节点的权重值,所述共线的邻居节点的权重值大于或等于共点的邻居节点的权重值。
可选地,所述目标上下文包括用于帧间解码的第一套上下文或用于帧内解码的第二套上下文。
可选地,第二划分模块901具体用于执行以下操作:
遍历第一节点队列中的节点,获得所述当前待解码节点,所述第一节点队列包括基于所述第一几何信息已构建的树结构中对应的空间块被占据的节点;
确定所述当前待解码节点是否满足孤立点解码条件;
在所述当前待解码节点不满足孤立点解码条件的情况下,对所述第一节点进行树结构划分,获得所述第一节点的子节点;
基于所述第一节点的子节点的占据情况确定所述第一节点的占位码;
其中,所述第二占位码包括所述第一节点的占位码。
可选地,第二划分模块901还用于:在所述当前待解码节点满足孤立点解码条件,且所述当前待解码节点为非孤立节点的情况下,对所述当前待解码节点进行树结构划分,获得所述当前待解码节点的子节点。
可选地,第二划分模块901具体用于执行以下操作:
遍历第一节点队列中的节点,获得所述当前待解码节点,所述第一节点队列包括基于所述第一几何信息已构建的树结构中对应的空间块被占据的节点;
对所述第一节点进行树结构划分,获得所述第一节点的子节点;
确定所述当前待解码节点是否满足孤立点解码条件;
在所述当前待解码节点不满足孤立点解码条件的情况下,基于所述第一节点的子节点的占据情况确定所述第一节点的占位码;
其中,所述第二占位码包括所述第一节点的占位码。
可选地,第二划分模块901还用于:在所述当前待解码节点满足孤立点解码条件,且所述当前待解码节点为非孤立节点的情况下,基于所述第一节 点的子节点的占据情况确定所述第一节点的占位码。
可选地,第二划分模块901还用于:存储所述第一节点的占位码。
可选地,所述孤立点解码条件包括:
所述第N帧点云对应的几何头信息的直接解码标识符为预设值;
在所述当前待解码节点对应的空间块存在L个方向的边长大于预设最小边长的情况下,目标点的待解码莫顿码位数之和大于L的预设倍,所述目标点包括所述第一几何信息中位于所述当前待解码节点对应的空间块内的点,L为自然数;
目标节点被占据的情况满足预设条件;
其中,所述目标节点为已解码节点中与所述当前待解码节点关联的节点。
可选地,所述目标节点包括以下至少一项:
第五节点的子节点,所述第五节点为所述第二几何信息对应的树结构中与所述当前待解码节点对应的节点;
第五节点的邻居节点;
第五节点的邻居节点的子节点。
可选地,第五节点的邻居节点包括以下至少一项:
所述第五节点的同层节点;
所述第五节点的父节点对应的同层节点的子节点。
可选地,所述目标节点被占据的情况满足预设条件包括以下至少一项:
所述目标节点被占据的节点数小于第二阈值;
所述第二几何信息中位于所述目标节点对应的空间块内的点的数量小于第三阈值。
本申请实施例提供的点云的几何信息解码处理装置能够实现图7的方法实施例中各个过程,为避免重复,这里不再赘述。
本申请实施例中的点云的几何信息编码处理装置和点云的几何信息解码处理装置可以是装置,具有操作系统的装置或电子设备,也可以是终端中的部件、集成电路、或芯片。该装置可以是移动终端,也可以为非移动终端。示例性的,移动终端可以包括但不限于上述所列举的终端的类型,非移动终端可以为服务器、网络附属存储器(Network Attached Storage,NAS)、个人 计算机(Personal Computer,PC)、电视机(Television,TV)、柜员机或者自助机等,本申请实施例不作具体限定。
本申请实施例提供的点云的几何信息编码处理装置和点云的几何信息解码处理装置能够实现图4至图7的方法实施例实现的各个过程,并达到相同的技术效果,为避免重复,这里不再赘述。
如图10所示,本申请实施例还提供一种通信设备1000,包括处理器1001,存储器1002,存储在存储器1002上并可在所述处理器1001上运行的程序或指令,例如,该程序或指令被处理器1001执行时实现上述点云的几何信息编码处理方法或点云的几何信息解码处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本申请实施例还提供一种终端,包括处理器和通信接口,处理器用于用于执行以下操作:对第一几何信息和第二几何信息进行同步树划分,获得所述第一几何信息对应的第一占位码和所述第二几何信息对应的第二占位码;所述第一几何信息基于当前待编码的第N帧点云的几何信息进行预处理得到,N为大于1的整数,所述第二几何信息为所述第N帧点云对应的参考帧点云的重建几何信息;根据第一节点和第一节点的邻居节点的占据情况,确定目标上下文;所述第一节点为所述第二几何信息对应的树结构中与第二节点对应的节点,所述第二节点为所述第一几何信息对应的树结构中当前待编码节点中待编码子节点;利用所述目标上下文对所述第二节点的占位码进行熵编码。或者,处理器用于执行以下操作:对第二几何信息进行树结构划分,获得第二占位码,所述第二几何信息为当前待解码的第N帧点云对应的参考帧点云的重建几何信息;基于所述第二占位码确定第一节点和第一节点的邻居节点的占据情况,确定目标上下文;所述第一节点为所述第二几何信息对应的树结构中与第二节点对应的节点,所述第二节点为第一几何信息对应的树结构中当前待解码节点中待解码子节点,所述第一几何信息为所述第N帧点云已解码节点对应的几何信息;利用所述目标上下文对所述第二节点对应的几何码流进行熵解码,获得第二节点对应的占位码;基于所述第二节点对应的占位码进行多叉树重建,获得所述第二节点的几何信息。该终端实施例是与上述方法实施例对应的,上述方法实施例的各个实施过程和实现方式均可 适用于该终端实施例中,且能达到相同的技术效果。具体地,图11为实现本申请各个实施例的一种终端的硬件结构示意图。
该终端1100包括但不限于:射频单元1101、网络模块1102、音频输出单元1103、输入单元1104、传感器1105、显示单元1106、用户输入单元1107、接口单元1108、存储器1109以及处理器1110等中的至少部分部件。
本领域技术人员可以理解,终端1100还可以包括给各个部件供电的电源(比如电池),电源可以通过电源管理系统与处理器1110逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。图11中示出的终端结构并不构成对终端的限定,终端可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置,在此不再赘述。
应理解的是,本申请实施例中,输入单元1104可以包括图形处理器(Graphics Processing Unit,GPU)和麦克风,图形处理器对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。显示单元1106可包括显示面板,可以采用液晶显示器、有机发光二极管等形式来配置显示面板。用户输入单元1107包括触控面板以及其他输入设备。触控面板11071,也称为触摸屏。触控面板可包括触摸检测装置和触摸控制器两个部分。其他输入设备可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
本申请实施例中,射频单元1101将来自网络侧设备的下行数据接收后,给处理器1110处理;另外,将上行的数据发送给网络侧设备。通常,射频单元1101包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。
存储器1109可用于存储软件程序或指令以及各种数据。存储器1109可主要包括存储程序或指令区和存储数据区,其中,存储程序或指令区可存储操作系统、至少一个功能所需的应用程序或指令(比如声音播放功能、图像播放功能等)等。此外,存储器1109可以包括高速随机存取存储器,还可以包括非瞬态性存储器,其中,非瞬态性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除 可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。例如至少一个磁盘存储器件、闪存器件、或其他非瞬态性固态存储器件。
处理器1110可包括一个或多个处理单元;可选地,处理器1110可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序或指令等,调制解调处理器主要处理无线通信,如基带处理器。可以理解的是,上述调制解调处理器也可以不集成到处理器1110中。
其中,处理器1110用于执行以下操作:
对第一几何信息和第二几何信息进行同步树划分,获得所述第一几何信息对应的第一占位码和所述第二几何信息对应的第二占位码;所述第一几何信息基于当前待编码的第N帧点云的几何信息进行预处理得到,N为大于1的整数,所述第二几何信息为所述第N帧点云对应的参考帧点云的重建几何信息;
根据第一节点和第一节点的邻居节点的占据情况,确定目标上下文;所述第一节点为所述第二几何信息对应的树结构中与第二节点对应的节点,所述第二节点为所述第一几何信息对应的树结构中当前待编码节点中待编码子节点;
利用所述目标上下文对所述第二节点的占位码进行熵编码。
或者,处理器1110用于执行以下操作:
对第二几何信息进行树结构划分,获得第二占位码,所述第二几何信息为当前待解码的第N帧点云对应的参考帧点云的重建几何信息;
基于所述第二占位码确定第一节点和第一节点的邻居节点的占据情况,确定目标上下文;所述第一节点为所述第二几何信息对应的树结构中与第二节点对应的节点,所述第二节点为第一几何信息对应的树结构中当前待解码节点中待解码子节点,所述第一几何信息为所述第N帧点云已解码节点对应的几何信息;
利用所述目标上下文对所述第二节点对应的几何码流进行熵解码,获得第二节点对应的占位码;
基于所述第二节点对应的占位码进行多叉树重建,获得所述第二节点的 几何信息。
应理解,本实施例中,上述处理器1110能够实现图4和7的方法实施例中终端实现的各个过程,为避免重复,这里不再赘述。
本申请实施例还提供一种可读存储介质,所述可读存储介质可以是非易失的,也可以是易失的,所述可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述点云的几何信息编码处理方法或点云的几何信息解码处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本申请实施例还提供一种计算机程序产品,所述计算机程序产品被存储在非瞬态的存储介质中,所述计算机程序产品被至少一个处理器执行以实现上述点云的几何信息编码处理方法或点云的几何信息解码处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
其中,所述处理器为上述实施例中所述的电子设备中的处理器。所述可读存储介质,包括计算机可读存储介质,如计算机只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等。
本申请实施例另提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现上述点云的几何信息编码处理方法或点云的几何信息解码处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
应理解,本申请实施例提到的芯片还可以称为系统级芯片、系统芯片、芯片系统或片上系统芯片等。
本申请实施例另提供了一种程序产品,所述程序产品存储在非瞬态的存储介质中,所述程序产品被至少一个处理器执行以实现上述点云的几何信息编码处理方法或点云的几何信息解码处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还 包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本申请实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者基站等)执行本申请各个实施例所述的方法。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。

Claims (43)

  1. 一种点云的几何信息编码处理方法,包括:
    对第一几何信息和第二几何信息进行同步树划分,获得所述第一几何信息对应的第一占位码和所述第二几何信息对应的第二占位码;所述第一几何信息基于当前待编码的第N帧点云的几何信息进行预处理得到,N为大于1的整数,所述第二几何信息为所述第N帧点云对应的参考帧点云的重建几何信息;
    根据第一节点和第一节点的邻居节点的占据情况,确定目标上下文;所述第一节点为所述第二几何信息对应的树结构中与第二节点对应的节点,所述第二节点为所述第一几何信息对应的树结构中当前待编码节点中待编码子节点;
    利用所述目标上下文对所述第二节点的占位码进行熵编码。
  2. 根据权利要求1所述的方法,其中,所述根据第一节点和第一节点的邻居节点的占据情况,确定目标上下文的步骤,包括:
    计算第一节点和M个邻居节点中被占据的节点数的加权和,所述M个邻居节点为所述第一节点的至少部分邻居节点;
    基于所述加权和确定所述目标上下文。
  3. 根据权利要求2所述的方法,其中,在所述目标上下文包括用于帧间编码的第一套上下文的情况下,利用所述目标上下文对所述第二节点的占位码进行熵编码的步骤,包括:
    基于所述加权和以及第三节点的占据情况和第四节点的占据情况是否相同确定索引值,所述第三节点为所述第一节点的前一个节点,所述第四节点为所述第二节点的前一个节点;
    利用所述第一套上下文中与所述索引值对应的上下文,对所述第二节点的占位码进行熵编码。
  4. 根据权利要求2所述的方法,其中,所述M个邻居节点包括以下至少一项:共面的邻居节点、共线的邻居节点和共点的邻居节点。
  5. 根据权利要求4所述的方法,其中,所述第一节点的权重值大于或等 于所述共面的邻居节点权重值,所述共面的邻居节点的权重值大于或等于所述共线的邻居节点的权重值,所述共线的邻居节点的权重值大于或等于共点的邻居节点的权重值。
  6. 根据权利要求1至5中任一项所述的方法,其中,所述目标上下文包括用于帧间编码的第一套上下文或用于帧内编码的第二套上下文。
  7. 根据权利要求1所述的方法,其中,对所述第一几何信息进行树结构划分,获得所述第一几何信息对应的第一占位码,包括:
    遍历第一节点队列中的节点,获得所述当前待编码节点,所述第一节点队列包括基于所述第一几何信息已构建的树结构中对应的空间块被占据的节点;
    确定所述当前待编码节点是否满足孤立点编码条件;
    在所述当前待编码节点不满足孤立点编码条件的情况下,对所述当前待编码节点进行树结构划分,获得所述当前待编码节点的子节点;
    基于所述当前待编码节点的子节点的占据情况确定所述当前待编码节点的占位码;
    其中,所述第一占位码包括所述当前待编码节点的占位码。
  8. 根据权利要求7所述的方法,其中,所述确定所述当前待编码节点是否满足孤立点编码条件的步骤之后,所述方法还包括:
    在所述当前待编码节点满足孤立点编码条件,且所述当前待编码节点为非孤立节点的情况下,对所述当前待编码节点进行树结构划分,获得所述当前待编码节点的子节点。
  9. 根据权利要求1所述的方法,其中,对所述第一几何信息进行树结构划分,获得所述第一几何信息对应的第一占位码,包括:
    遍历第一节点队列中的节点,获得所述当前待编码节点,所述第一节点队列包括基于所述第一几何信息已构建的树结构中对应的空间块被占据的节点;
    对所述当前待编码节点进行树结构划分,获得所述当前待编码节点的子节点;
    确定所述当前待编码节点是否满足孤立点编码条件;
    在所述当前待编码节点不满足孤立点编码条件的情况下,基于所述当前待编码节点的子节点的占据情况确定所述当前待编码节点的占位码;
    其中,所述第一占位码包括所述当前待编码节点的占位码。
  10. 根据权利要求9所述的方法,其中,所述确定所述当前待编码节点是否满足孤立点编码条件的步骤之后,所述方法还包括:
    在所述当前待编码节点满足孤立点编码条件,且所述当前待编码节点为非孤立节点的情况下,基于所述当前待编码节点的子节点的占据情况确定所述当前待编码节点的占位码。
  11. 根据权利要求7至10中任一项所述的方法,其中,对所述第二几何信息进行树结构划分,获得所述第二几何信息对应的第二占位码,包括:
    对所述第二几何信息对应的树结构中与当前待编码节点对应的第五节点进行结构树划分,获得所述第五节点的占据码;所述第二占据码包括所述第五节点的占据码
    存储所述第五节点的占据码。
  12. 根据权利要求7至10中任一项所述的方法,其中,所述孤立点编码条件包括:
    所述第N帧点云对应的几何头信息的直接编码标识符为预设值;
    在所述当前待编码节点对应的空间块存在L个方向的边长大于预设最小边长的情况下,目标点的待编码莫顿码位数之和大于L的预设倍,所述目标点包括所述第一几何信息中位于所述当前待编码节点对应的空间块内的点,L为自然数;
    目标节点被占据的情况满足预设条件;
    其中,所述目标节点为已编码节点中与所述当前待编码节点关联的节点。
  13. 根据权利要求12所述的方法,其中,所述目标节点包括以下至少一项:
    第五节点的子节点,所述第五节点为所述第二几何信息对应的树结构中与所述当前待编码节点对应的节点;
    第五节点的邻居节点;
    第五节点的邻居节点的子节点。
  14. 根据权利要求13所述的方法,其中,第五节点的邻居节点包括以下至少一项:
    所述第五节点的同层节点;
    所述第五节点的父节点对应的同层节点的子节点。
  15. 根据权利要求12所述的方法,其中,所述目标节点被占据的情况满足预设条件包括以下至少一项:
    所述目标节点被占据的节点数小于第二阈值;
    所述第二几何信息中位于所述目标节点对应的空间块内的点的数量小于第三阈值。
  16. 一种点云的几何信息解码处理方法,包括:
    对第二几何信息进行树结构划分,获得第二占位码,所述第二几何信息为当前待解码的第N帧点云对应的参考帧点云的重建几何信息;
    基于所述第二占位码确定第一节点和第一节点的邻居节点的占据情况,确定目标上下文;所述第一节点为所述第二几何信息对应的树结构中与第二节点对应的节点,所述第二节点为第一几何信息对应的树结构中当前待解码节点中待解码子节点,所述第一几何信息为所述第N帧点云已解码节点对应的几何信息;
    利用所述目标上下文对所述第二节点对应的几何码流进行熵解码,获得第二节点对应的占位码;
    基于所述第二节点对应的占位码进行多叉树重建,获得所述第二节点的几何信息。
  17. 根据权利要求16所述的方法,其中,所述基于所述第二占位码确定第一节点和第一节点的邻居节点的占据情况,确定目标上下文的步骤,包括:
    计算第一节点和M个邻居节点中被占据的节点数的加权和,所述M个邻居节点为所述第一节点的至少部分邻居节点;
    基于所述加权和确定所述目标上下文。
  18. 根据权利要求17所述的方法,其中,在所述目标上下文包括用于帧间解码的第一套上下文的情况下,利用所述目标上下文对所述第二节点对应的几何码流进行熵解码,获得所述第二节点对应的占位码的步骤,包括:
    基于所述加权和以及第三节点的占据情况和第四节点的占据情况是否相同确定索引值,所述第三节点为所述第一节点的前一个节点,所述第四节点为所述第二节点的前一个节点;
    利用所述第一套上下文中与所述索引值对应的上下文,对所述第二节点的占位码进行熵解码,获得所述第二节点对应的占位码。
  19. 根据权利要求17所述的方法,其中,所述M个邻居节点包括以下至少一项:共面的邻居节点、共线的邻居节点和共点的邻居节点。
  20. 根据权利要求19所述的方法,其中,所述第一节点的权重值大于或等于所述共面的邻居节点权重值,所述共面的邻居节点的权重值大于或等于所述共线的邻居节点的权重值,所述共线的邻居节点的权重值大于或等于共点的邻居节点的权重值。
  21. 根据权利要求16至20中任一项所述的方法,其中,所述目标上下文包括用于帧间解码的第一套上下文或用于帧内解码的第二套上下文。
  22. 根据权利要求16所述的方法,其中,对所述第一几何信息进行树结构划分,获得所述第一几何信息对应的第一占位码,包括:
    遍历第一节点队列中的节点,获得所述当前待解码节点,所述第一节点队列包括基于所述第一几何信息已构建的树结构中对应的空间块被占据的节点;
    确定所述当前待解码节点是否满足孤立点解码条件;
    在所述当前待解码节点不满足孤立点解码条件的情况下,对所述第一节点进行树结构划分,获得所述第一节点的子节点;
    基于所述第一节点的子节点的占据情况确定所述第一节点的占位码;
    其中,所述第二占位码包括所述第一节点的占位码。
  23. 根据权利要求22所述的方法,其中,所述确定所述当前待解码节点是否满足孤立点解码条件的步骤之后,所述方法还包括:
    在所述当前待解码节点满足孤立点解码条件,且所述当前待解码节点为非孤立节点的情况下,对所述当前待解码节点进行树结构划分,获得所述当前待解码节点的子节点。
  24. 根据权利要求16所述的方法,其中,对所述第一几何信息进行树结 构划分,获得所述第一几何信息对应的第一占位码,包括:
    遍历第一节点队列中的节点,获得所述当前待解码节点,所述第一节点队列包括基于所述第一几何信息已构建的树结构中对应的空间块被占据的节点;
    对所述第一节点进行树结构划分,获得所述第一节点的子节点;
    确定所述当前待解码节点是否满足孤立点解码条件;
    在所述当前待解码节点不满足孤立点解码条件的情况下,基于所述第一节点的子节点的占据情况确定所述第一节点的占位码;
    其中,所述第二占位码包括所述第一节点的占位码。
  25. 根据权利要求24所述的方法,其中,所述确定所述当前待解码节点是否满足孤立点解码条件的步骤之后,所述方法还包括:
    在所述当前待解码节点满足孤立点解码条件,且所述当前待解码节点为非孤立节点的情况下,基于所述第一节点的子节点的占据情况确定所述第一节点的占位码。
  26. 根据权利要求22至25中任一项所述的方法,其中,所述方法还包括:
    存储所述第一节点的占位码。
  27. 根据权利要求22至25中任一项所述的方法,其中,所述孤立点解码条件包括:
    所述第N帧点云对应的几何头信息的直接解码标识符为预设值;
    在所述当前待解码节点对应的空间块存在L个方向的边长大于预设最小边长的情况下,目标点的待解码莫顿码位数之和大于L的预设倍,所述目标点包括所述第一几何信息中位于所述当前待解码节点对应的空间块内的点,L为自然数;
    目标节点被占据的情况满足预设条件;
    其中,所述目标节点为已解码节点中与所述当前待解码节点关联的节点。
  28. 根据权利要求27所述的方法,其中,所述目标节点包括以下至少一项:
    第五节点的子节点,所述第五节点为所述第二几何信息对应的树结构中与所述当前待解码节点对应的节点;
    第五节点的邻居节点;
    第五节点的邻居节点的子节点。
  29. 根据权利要求28所述的方法,其中,第五节点的邻居节点包括以下至少一项:
    所述第五节点的同层节点;
    所述第五节点的父节点对应的同层节点的子节点。
  30. 根据权利要求27所述的方法,其中,所述目标节点被占据的情况满足预设条件包括以下至少一项:
    所述目标节点被占据的节点数小于第二阈值;
    所述第二几何信息中位于所述目标节点对应的空间块内的点的数量小于第三阈值。
  31. 一种点云的几何信息编码处理装置,包括:
    第一划分模块,用于对第一几何信息和第二几何信息进行同步树划分,获得所述第一几何信息对应的第一占位码和所述第二几何信息对应的第二占位码;所述第一几何信息基于当前待编码的第N帧点云的几何信息进行预处理得到,N为大于1的整数,所述第二几何信息为所述第N帧点云对应的参考帧点云的重建几何信息;
    第一确定模块,用于根据第一节点和第一节点的邻居节点的占据情况,确定目标上下文;所述第一节点为所述第二几何信息对应的树结构中与第二节点对应的节点,所述第二节点为所述第一几何信息对应的树结构中当前待编码节点中待编码子节点;
    编码模块,用于利用所述目标上下文对所述第二节点的占位码进行熵编码。
  32. 根据权利要求31所述的装置,其中,所述第一确定模块包括:
    第一计算单元,用于计算第一节点和M个邻居节点中被占据的节点数的加权和,所述M个邻居节点为所述第一节点的至少部分邻居节点;
    第一确定单元,用于基于所述加权和确定所述目标上下文。
  33. 根据权利要求32所述的装置,其中,在所述目标上下文包括用于帧间编码的第一套上下文的情况下,所述编码模块具体用于执行以下操作:
    基于所述加权和以及第三节点的占据情况和第四节点的占据情况是否相同确定索引值,所述第三节点为所述第一节点的前一个节点,所述第四节点为所述第二节点的前一个节点;
    利用所述第一套上下文中与所述索引值对应的上下文,对所述第二节点的占位码进行熵编码。
  34. 根据权利要求32所述的装置,其中,所述M个邻居节点包括以下至少一项:共面的邻居节点、共线的邻居节点和共点的邻居节点。
  35. 一种点云的几何信息解码处理装置,包括:
    第二划分模块,用于对第二几何信息进行树结构划分,获得第二占位码,所述第二几何信息为当前待解码的第N帧点云对应的参考帧点云的重建几何信息;
    第二确定模块,用于基于所述第二占位码确定第一节点和第一节点的邻居节点的占据情况,确定目标上下文;所述第一节点为所述第二几何信息对应的树结构中与第二节点对应的节点,所述第二节点为第一几何信息对应的树结构中当前待解码节点中待解码子节点,所述第一几何信息为所述第N帧点云已解码节点对应的几何信息;
    解码模块,用于利用所述目标上下文对所述第二节点对应的几何码流进行熵解码,获得第二节点对应的占位码;
    重建模块,用于基于所述第二节点对应的占位码进行多叉树重建,获得所述第二节点的几何信息。
  36. 根据权利要求35所述的装置,其中,所述第二确定模块包括:
    第二计算单元,用于计算第一节点和M个邻居节点中被占据的节点数的加权和,所述M个邻居节点为所述第一节点的至少部分邻居节点;
    第二确定单元,用于基于所述加权和确定所述目标上下文。
  37. 根据权利要求36所述的装置,其中,在所述目标上下文包括用于帧间解码的第一套上下文的情况下,所述解码模块具体用于执行以下操作:
    基于所述加权和以及第三节点的占据情况和第四节点的占据情况是否相同确定索引值,所述第三节点为所述第一节点的前一个节点,所述第四节点为所述第二节点的前一个节点;
    利用所述第一套上下文中与所述索引值对应的上下文,对所述第二节点的占位码进行熵解码,获得所述第二节点对应的占位码。
  38. 根据权利要求36所述的装置,其中,所述M个邻居节点包括以下至少一项:共面的邻居节点、共线的邻居节点和共点的邻居节点。
  39. 一种终端,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的程序,所述程序被所述处理器执行时实现如权利要求1至15中任一项所述的点云的几何信息编码处理方法中的步骤,或者所述程序或指令被处理器执行时实现如权利要求16至30中任一项所述的点云的几何信息解码处理方法中的步骤。
  40. 一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序被所述处理器执行时实现如权利要求1至15中任一项所述的点云的几何信息编码处理方法中的步骤,或者所述程序或指令被处理器执行时实现如权利要求16至30中任一项所述的点云的几何信息解码处理方法中的步骤。
  41. 一种芯片,包括处理器和通信接口,其中,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现如权利要求1至15中任一项所述的点云的几何信息编码处理方法中的步骤,或者,实现如权利要求16至30中任一项所述的点云的几何信息解码处理方法中的步骤。
  42. 一种计算机程序产品,其中,所述计算机程序产品被存储在非瞬态的可读存储介质中,所述计算机程序产品被至少一个处理器执行以实现如权利要求1至15中任一项所述的点云的几何信息编码处理方法中的步骤,或者,所述计算机程序产品被至少一个处理器执行以实现如权利要求16至30中任一项所述的点云的几何信息解码处理方法中的步骤。
  43. 一种通信设备,被配置为执行如权利要求1至15中任一项所述的点云的几何信息编码处理方法中的步骤,或者,被配置为执行如权利要求16至30中任一项所述的点云的几何信息解码处理方法中的步骤。
PCT/CN2022/097634 2021-06-11 2022-06-08 点云的几何信息编码处理方法、解码处理方法及相关设备 Ceased WO2022257970A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110656007.9 2021-06-11
CN202110656007.9A CN115471627B (zh) 2021-06-11 2021-06-11 点云的几何信息编码处理方法、解码处理方法及相关设备

Publications (1)

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

Family

ID=84364115

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/097634 Ceased WO2022257970A1 (zh) 2021-06-11 2022-06-08 点云的几何信息编码处理方法、解码处理方法及相关设备

Country Status (2)

Country Link
CN (1) CN115471627B (zh)
WO (1) WO2022257970A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024145912A1 (zh) * 2023-01-06 2024-07-11 Oppo广东移动通信有限公司 点云编解码方法、装置、设备及存储介质
CN119815053A (zh) * 2023-10-10 2025-04-11 维沃移动通信有限公司 点云属性编码方法、点云属性解码方法、装置及电子设备
WO2025138030A1 (zh) * 2023-12-28 2025-07-03 Oppo广东移动通信有限公司 编解码方法、点云编码器、点云解码器以及存储介质

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN120476596A (zh) * 2023-01-06 2025-08-12 Oppo广东移动通信有限公司 编解码方法、码流、编码器、解码器以及存储介质
WO2024145935A1 (zh) * 2023-01-06 2024-07-11 Oppo广东移动通信有限公司 点云编解码方法、装置、设备及存储介质
CN120188479A (zh) * 2023-01-06 2025-06-20 Oppo广东移动通信有限公司 点云编解码方法、装置、设备及存储介质
WO2024145934A1 (zh) * 2023-01-06 2024-07-11 Oppo广东移动通信有限公司 点云编解码方法、装置、设备及存储介质
CN118338019B (zh) * 2023-01-11 2025-09-02 维沃移动通信有限公司 点云编码方法、点云解码方法、装置及通信设备
WO2024197680A1 (zh) * 2023-03-29 2024-10-03 Oppo广东移动通信有限公司 点云编解码方法、装置、设备及存储介质
WO2024216476A1 (zh) * 2023-04-17 2024-10-24 Oppo广东移动通信有限公司 编解码方法、编码器、解码器、码流以及存储介质
WO2024216493A1 (zh) * 2023-04-18 2024-10-24 Oppo广东移动通信有限公司 点云编解码方法、编码器、解码器、码流及存储介质
CN116634179A (zh) * 2023-05-26 2023-08-22 腾讯科技(深圳)有限公司 点云数据处理方法、装置、电子设备及存储介质
WO2025077881A1 (en) * 2023-10-13 2025-04-17 Douyin Vision (Beijing) Co., Ltd. Method, apparatus, and medium for point cloud coding
CN120343259A (zh) * 2024-01-17 2025-07-18 维沃移动通信有限公司 编解码方法及相关设备
CN120835158A (zh) * 2024-04-17 2025-10-24 维沃移动通信有限公司 Trisoup顶点优化方法、装置及设备
CN118678084B (zh) * 2024-07-16 2025-10-17 鹏城实验室 点云数据编解码方法、装置、计算机设备及可读存储介质
CN119967190B (zh) * 2025-01-27 2026-02-03 重庆邮电大学 一种基于lstm网络预测的动态点云快速编码方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020123469A1 (en) * 2018-12-11 2020-06-18 Futurewei Technologies, Inc. Hierarchical tree attribute coding by median points in point cloud coding
CN111614966A (zh) * 2020-05-29 2020-09-01 北京爱奇艺科技有限公司 基于同步树的同步方法、系统、装置、设备及存储介质
CN112565794A (zh) * 2020-12-03 2021-03-26 西安电子科技大学 一种点云孤立点编码、解码方法及装置
CN112565764A (zh) * 2020-12-03 2021-03-26 西安电子科技大学 一种点云几何信息帧间编码及解码方法
CN112565795A (zh) * 2020-12-03 2021-03-26 西安电子科技大学 一种点云几何信息编码及解码方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012040883A1 (en) * 2010-09-30 2012-04-05 Technicolor (China) Technology Co., Ltd. Method and apparatus for encoding geometry patterns, and method and apparatus for decoding geometry patterns
WO2019156141A1 (ja) * 2018-02-08 2019-08-15 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
EP3553747B1 (en) * 2018-04-09 2021-09-01 BlackBerry Limited Methods and devices for predictive coding of point clouds

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020123469A1 (en) * 2018-12-11 2020-06-18 Futurewei Technologies, Inc. Hierarchical tree attribute coding by median points in point cloud coding
CN111614966A (zh) * 2020-05-29 2020-09-01 北京爱奇艺科技有限公司 基于同步树的同步方法、系统、装置、设备及存储介质
CN112565794A (zh) * 2020-12-03 2021-03-26 西安电子科技大学 一种点云孤立点编码、解码方法及装置
CN112565764A (zh) * 2020-12-03 2021-03-26 西安电子科技大学 一种点云几何信息帧间编码及解码方法
CN112565795A (zh) * 2020-12-03 2021-03-26 西安电子科技大学 一种点云几何信息编码及解码方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024145912A1 (zh) * 2023-01-06 2024-07-11 Oppo广东移动通信有限公司 点云编解码方法、装置、设备及存储介质
CN119815053A (zh) * 2023-10-10 2025-04-11 维沃移动通信有限公司 点云属性编码方法、点云属性解码方法、装置及电子设备
WO2025138030A1 (zh) * 2023-12-28 2025-07-03 Oppo广东移动通信有限公司 编解码方法、点云编码器、点云解码器以及存储介质

Also Published As

Publication number Publication date
CN115471627B (zh) 2026-01-30
CN115471627A (zh) 2022-12-13

Similar Documents

Publication Publication Date Title
WO2022257970A1 (zh) 点云的几何信息编码处理方法、解码处理方法及相关设备
WO2022257969A1 (zh) 点云编码处理方法、解码处理方法及相关设备
WO2022257968A1 (zh) 点云编码方法、点云解码方法及终端
WO2022257971A1 (zh) 点云编码处理方法、点云解码处理方法及相关设备
WO2023098807A1 (zh) 点云编、解码处理方法、装置、编码设备及解码设备
WO2022257978A1 (zh) 点云编码方法、解码方法及装置
WO2023098820A1 (zh) 点云编码、解码方法、装置及通信设备
WO2023025024A1 (zh) 点云属性编码方法、点云属性解码方法及终端
WO2022258009A1 (zh) 熵编码、解码方法及装置
WO2023098802A1 (zh) 点云属性编码方法、点云属性解码方法及终端
WO2023098801A1 (zh) 点云属性编码方法、点云解码方法及终端
US12470721B2 (en) Point cloud encoding processing method and apparatus and point cloud decoding processing method and apparatus
US20240121439A1 (en) Point cloud attribute information encoding method and apparatus, point cloud attribute information decoding method and apparatus, and related device
JP7699235B2 (ja) コーディング制御方法、デコーディング制御方法、コーディング制御装置、及びデコーディング制御装置
WO2024120325A1 (zh) 点云编码方法、点云解码方法及终端
WO2024120326A1 (zh) 几何编码方法、几何解码方法及终端
WO2024188138A1 (zh) 点云编码处理方法、点云解码处理方法及相关设备
WO2024245112A1 (zh) 点云编码处理方法、点云解码处理方法及相关设备
WO2024120323A1 (zh) 属性变换编码方法、属性变换解码方法及终端
CN116233389A (zh) 点云编码处理方法、点云解码处理方法及相关设备
CN116614623A (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: 22819567

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

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

Country of ref document: EP

Kind code of ref document: A1