WO2021108969A1 - 属性信息的预测方法、编码器、解码器、及存储介质 - Google Patents

属性信息的预测方法、编码器、解码器、及存储介质 Download PDF

Info

Publication number
WO2021108969A1
WO2021108969A1 PCT/CN2019/122499 CN2019122499W WO2021108969A1 WO 2021108969 A1 WO2021108969 A1 WO 2021108969A1 CN 2019122499 W CN2019122499 W CN 2019122499W WO 2021108969 A1 WO2021108969 A1 WO 2021108969A1
Authority
WO
WIPO (PCT)
Prior art keywords
point
predicted
adjacent
morton code
attribute
Prior art date
Application number
PCT/CN2019/122499
Other languages
English (en)
French (fr)
Inventor
万帅
魏磊
杨付正
霍俊彦
马彦卓
杨丽慧
Original Assignee
Oppo广东移动通信有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oppo广东移动通信有限公司 filed Critical Oppo广东移动通信有限公司
Priority to EP19954841.3A priority Critical patent/EP4072135A4/en
Priority to JP2022532617A priority patent/JP7430792B2/ja
Priority to CN201980102312.4A priority patent/CN114667732A/zh
Priority to CN202210909589.1A priority patent/CN115190300A/zh
Priority to PCT/CN2019/122499 priority patent/WO2021108969A1/zh
Priority to KR1020227019876A priority patent/KR20220110502A/ko
Publication of WO2021108969A1 publication Critical patent/WO2021108969A1/zh
Priority to US17/805,093 priority patent/US11704840B2/en
Priority to US18/300,484 priority patent/US20230252684A1/en
Priority to JP2024010387A priority patent/JP2024050705A/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/001Model-based coding, e.g. wire frame
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/75Determining position or orientation of objects or cameras using feature-based methods involving models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/88Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving rearrangement of data among different coding units, e.g. shuffling, interleaving, scrambling or permutation of pixel data or permutation of transform coefficient data among different blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20212Image combination
    • G06T2207/20224Image subtraction

Definitions

  • the embodiments of the present application relate to coding and decoding technologies in the communication field, and in particular, to a method for predicting attribute information, an encoder, a decoder, and a storage medium.
  • the input point cloud can be divided into geometric information and attribute information corresponding to each point.
  • the geometric information of the point cloud and the location of each point cloud The corresponding attribute information is coded separately.
  • the coordinate information of the point can be used to obtain the Morton code corresponding to each point in the point cloud, and then based on the Morton code, the attribute information is predicted by the backward difference method.
  • Morton codes have periodic jump points, it is spatially inaccurate to only use adjacent points of Morton codes to predict the current point, which affects the accuracy of prediction and leads to prediction residuals. Large defects, which in turn reduce coding efficiency.
  • the embodiments of the present application provide a prediction method, an encoder, a decoder, and a storage medium for attribute information, which can effectively improve the accuracy of prediction, greatly reduce prediction residuals, and thereby improve coding efficiency.
  • an embodiment of the present application provides a method for predicting attribute information, which is applied to an encoder, and the method includes:
  • the target Morton code corresponding to the point to be predicted is determined according to a preset neighbor information table; wherein, the preset neighbor information table is used to determine the neighboring position of the point to be predicted Determine the coordinate difference with the preset reference point;
  • an embodiment of the present application also provides a method for predicting attribute information, which is applied to a decoder, and the method includes:
  • the target Morton code corresponding to the point to be predicted is determined according to a preset neighbor information table; wherein, the preset neighbor information table is used to determine the neighboring position of the point to be predicted Determine the coordinate difference with the preset reference point;
  • an embodiment of the present application also provides an encoder.
  • the encoder includes: a first determining part, a first judging part, and a first predicting part,
  • the first determining part is configured to determine the current Morton code of the point to be predicted in the point cloud to be coded; and based on the current Morton code, determine the target corresponding to the point to be predicted according to a preset neighbor information table Morton code; wherein the preset neighbor information table is used to determine the coordinate difference between the neighboring position of the point to be predicted and the preset reference point;
  • the first judgment part is configured to judge whether there are adjacent points of the point to be predicted in the point cloud to be coded according to the target Morton code
  • the first prediction part is configured to predict the attribute prediction value of the point to be predicted according to the attribute reconstruction information of the adjacent point if the adjacent point exists in the point cloud to be coded.
  • an embodiment of the present application also provides a decoder, which includes: a second determining part, a second determining part, and a second predicting part,
  • the second determining part is configured to determine the current Morton code of the point to be predicted in the point cloud to be decoded; and based on the current Morton code, determine the target corresponding to the point to be predicted according to a preset neighbor information table Morton code; wherein the preset neighbor information table is used to determine the coordinate difference between the neighboring position of the point to be predicted and the preset reference point;
  • the second determining part is configured to determine whether there are adjacent points of the point to be predicted in the point cloud to be decoded according to the target Morton code;
  • the second prediction part is configured to predict the attribute prediction value of the point to be predicted based on the attribute reconstruction information of the adjacent point if the adjacent point exists in the point cloud to be decoded.
  • an embodiment of the present application also provides an encoder.
  • the encoder includes a first processor and a first memory storing executable instructions of the first processor. When a processor is executed, the method for predicting attribute information as described above is realized.
  • an embodiment of the present application also provides a decoder.
  • the decoder includes a second processor and a second memory storing executable instructions of the second processor. When the second processor executes, the method for predicting attribute information as described above is realized.
  • an embodiment of the present application also provides a computer-readable storage medium with a program stored thereon and applied to an encoder.
  • the program is executed by a processor, the method for predicting attribute information as described above is implemented. .
  • the embodiments of the present application also provide a computer-readable storage medium with a program stored thereon and applied to a decoder.
  • the program is executed by a processor, the method for predicting attribute information as described above is implemented. .
  • the embodiment of the application provides a method for predicting attribute information, an encoder, a decoder, and a storage medium.
  • the encoder determines the current Morton code of the point to be predicted in the point cloud to be encoded; based on the current Morton code, according to the preset
  • the adjacent information table determines the target Morton code corresponding to the point to be predicted; the preset adjacent information table is used to determine the coordinate difference between the adjacent position of the point to be predicted and the preset reference point; according to the target Morton code It is judged whether there are adjacent points of the point to be predicted in the point cloud to be coded; if there are adjacent points in the point cloud to be coded, the attribute prediction value of the point to be predicted is predicted according to the attribute reconstruction information of the adjacent points.
  • the decoder determines the current Morton code of the point to be predicted in the point cloud to be decoded; based on the current Morton code, determines the target Morton code corresponding to the point to be predicted according to the preset neighbor information table; judges the target Morton code to be decoded according to the target Morton code Whether there are adjacent points of the point to be predicted in the point cloud; if there are adjacent points in the point cloud to be decoded, the attribute prediction value of the point to be predicted is predicted according to the attribute reconstruction information of the adjacent points.
  • the codec predicts the attribute information of the point to be predicted, based on the preset neighbor information table, the current Morton code of the point to be predicted can be used to determine the surrounding area of the point to be predicted.
  • the target Morton code corresponding to the adjacent position of the point cloud.
  • the codec can directly use the attribute reconstruction value of the adjacent point to predict and obtain the to-be-predicted
  • the attribute prediction value of a point is precisely because the correlation between the point to be predicted and the adjacent point is stronger, so the prediction of the attribute information of the point to be predicted through the adjacent point can effectively improve the accuracy of the prediction and greatly reduce The prediction residual is reduced, thereby improving the coding efficiency.
  • Figure 1 is a schematic diagram of the coding process of PCEM
  • FIG. 2 is a schematic diagram of the decoding process of PCEM
  • Figure 3 shows the spatial coding of each pixel of an 8 ⁇ 8 image
  • Figure 4 shows the spatial coding of each pixel of a 4 ⁇ 4 image
  • Figure 5 is the first schematic diagram of the application of the prediction method
  • Figure 6 is a second schematic diagram of the application of the prediction method
  • FIG. 7 is a schematic diagram 1 of the implementation process of the method for predicting attribute information
  • Figure 8 is a schematic diagram of adjacent positions
  • Fig. 9 is a second schematic diagram of the realization process of the attribute information prediction method.
  • Figure 10 is the third schematic diagram of the implementation process of the attribute information prediction method
  • Figure 11 is a fourth schematic diagram of the implementation process of the attribute information prediction method.
  • Fig. 12 is a fifth schematic diagram of the realization process of the attribute information prediction method
  • Figure 13 is a schematic diagram of a prediction framework for attribute information
  • Fig. 14 is a flowchart of a prediction algorithm for attribute information
  • Figure 15 is a sixth schematic diagram of the implementation process of the attribute information prediction method
  • Fig. 16 is a seventh schematic diagram of the realization process of the method for predicting attribute information
  • Figure 17 is the eighth schematic diagram of the implementation process of the attribute information prediction method.
  • Figure 18 is a schematic diagram of the composition of the encoder
  • Figure 19 is a second schematic diagram of the composition of the encoder
  • Figure 20 is a schematic diagram of the structure of the decoder
  • Figure 21 is a second schematic diagram of the structure of the decoder.
  • the input point cloud can be divided into geometric information and attribute information corresponding to each point.
  • the geometric information of the point cloud and the attribute information corresponding to each point cloud are separately coded.
  • Figure 1 is a schematic diagram of the encoding process of PCEM.
  • the geometric information is coordinated so that all the point clouds are contained in a bounding box (bounding box), and then quantization is performed.
  • Quantization mainly plays the role of scaling. Due to quantization rounding, the geometric information of a part of the point cloud is the same. Therefore, it is determined whether to remove duplicate points based on parameters.
  • the process of quantization and removal of duplicate points is also called voxelization. process.
  • the geometric information is reconstructed to guide the attribute coding.
  • attribute coding is mainly carried out for color information.
  • the color information (that is, the attribute information) is converted from the RGB (Red-Green-Blue) color space to the YUV (Luminance-Chrominance) color space.
  • RGB Red-Green-Blue
  • YUV Luminance-Chrominance
  • Fig. 2 is a schematic diagram of the decoding process of PCEM.
  • the geometric bit stream and the attribute bit stream in the binary code stream are decoded independently.
  • decoding the geometric bitstream obtain the geometric information of the point cloud through entropy decoding-octree reconstruction-inverse coordinate quantization-inverse coordinate translation;
  • decoding the attribute bitstream through entropy decoding-inverse quantization-attribute Reconstruction-inverse space transformation obtains the attribute information of the point cloud, and restores the three-dimensional image model of the point cloud data to be encoded based on the geometric information and the attribute information.
  • the coordinate information of the point can be used to obtain the Morton code corresponding to each point in the point cloud, and then based on the Morton code, the attribute information is processed by the backward difference method. prediction.
  • Morton coding is also called z-order code, because its coding order is based on spatial z order. The specific method of calculating Morton code is described as follows. For each component of the three-dimensional coordinate represented by a d-bit binary number, the representation of the three coordinate components is realized by the following:
  • Morton code M is to start from the highest position of x, y, z, and alternately arrange x l , y l , z l to the lowest position in turn.
  • the calculation formula of M is as follows:
  • Figure 3 shows the spatial encoding of each pixel of an 8 ⁇ 8 image.
  • the position coordinates of x and y values from 0-7 are encoded with one-dimensional binary numbers.
  • Interleave binary coordinate values to obtain a binary z-value map.
  • Connect the z-shape along the numerical direction to produce a recursive z-shaped curve.
  • the z value is placed in the order of connection.
  • the above figure is iteratively generated in the z direction, from 00-11 (one z in the entire figure), then from 0000-1111 (one z for each point of the previous z), and then from 000000-111111 (the previous Put one z) for each point of z, increase by two bits each time, and increase recursively.
  • Figure 4 shows the spatial coding of each pixel of a 4 ⁇ 4 image.
  • the coordinates x and y are binarized first, and then the highest position of x and y At the beginning, let them alternately arrange the values of each bit from high to low.
  • connect the Morton code values from small to large you can see the zigzag connection sequence, and every four points can be regarded as a small block, except for the last two digits, the first four digits are the same.
  • the same Morton code of the first four bits can determine a parent block.
  • the Morton code of the parent block can be obtained by shifting the Morton code of these four points to the right by 2 digits.
  • every four blocks of the same level are continuously combined, that is, the Morton code value is shifted by two bits to the right, and their parent block can be obtained.
  • every eight small blocks are combined, that is, the Morton code value is shifted three places to the right, and their parent blocks can be obtained.
  • the points adjacent to the Morton code can be used to predict the current point.
  • the specific process is as follows:
  • Step3. Repeat Step2 until the complete frame point cloud is traversed.
  • Morton codes have periodic transition points, that is to say, the corresponding spatial positions of two adjacent Morton codes are not necessarily adjacent. Therefore, only the adjacent points of Morton codes are used to Prediction of the current point is spatially inaccurate, that is, in PCEM, only the previous Morton code is used to predict the attribute information of the current point, there will be errors, which will affect the accuracy of the prediction.
  • this application proposes to use the current Morton code of the point to be predicted to quickly find the true neighboring point with stronger correlation with the point to be predicted, and use the attribute reconstruction value of the neighboring point to determine the attributes of the predicted point.
  • Information is predicted to improve the performance of the encoder. That is to say, in this application, when the codec predicts the attribute information of the point to be predicted, based on the preset neighbor information table, the current Morton code of the point to be predicted can be used to determine the neighbors around the point to be predicted. The target Morton code corresponding to the position.
  • the codec can directly use the attribute reconstruction value of the adjacent point to predict and obtain the attribute of the point to be predicted
  • the predicted value is precisely because the correlation between the point to be predicted and the neighboring points is stronger, so the prediction of the attribute information of the point to be predicted through the neighboring points can effectively improve the accuracy of the prediction and greatly reduce the prediction. Residual, thereby improving coding efficiency.
  • FIG. 5 is a schematic diagram of the application of the prediction method, as shown in Figure 5.
  • the attribute prediction method of the present application can be applied to the attribute prediction position in the PCEM point cloud encoder framework.
  • Fig. 6 is a second schematic diagram of the application of the prediction method.
  • the attribute prediction method of the present application can be applied to the attribute reconstruction position in the PCEM point cloud decoder framework.
  • the prediction method of the attribute information acts on the encoding end and the decoding end simultaneously, and the process, framework and algorithm of the prediction method of the attribute information are exactly the same on the encoding end and the decoding end.
  • FIG. 7 is a schematic diagram of the implementation process of the method for predicting attribute information. As shown in FIG. 7, the encoder predicts the prediction point
  • the method of attribute information may include the following steps:
  • Step 101 Determine the current Morton code of the point to be predicted in the point cloud to be coded.
  • the encoder may first determine the current Morton code of the point to be predicted in the point cloud to be coded.
  • the geometric information of the point cloud to be coded and the attribute information corresponding to the point cloud to be coded are separately coded. Among them, after the geometric information encoding is completed, the geometric information is reconstructed, and the encoding of the attribute information will depend on the reconstructed geometric information.
  • the coding of attribute information is mainly for the coding of color information.
  • the color information is converted from the RGB color space to the YUV color space.
  • use the reconstructed geometric information to recolor the point cloud, so that the uncoded attribute information corresponds to the reconstructed geometric information.
  • the attribute information is predicted.
  • the point cloud to be coded is reordered based on the Morton code, and a point cloud sequence that can be used to predict the attribute information of the point cloud to be coded is generated.
  • the encoder can use the set information of each point in the point cloud to be coded to determine the Morton code of each point. After obtaining the Morton code of each point, the encoder can sort all the points in the point cloud to be coded in ascending order, sort all the Morton codes of all points, and generate the corresponding point cloud to be coded. Point cloud sequence collection. Among them, all Morton codes of all points in the point cloud to be coded are stored in the point cloud sequence set.
  • the encoder when the encoder encodes the attribute information of the point cloud to be coded, it can predict all the points of the point cloud to be coded in the order of Morton code from small to large. .
  • the point to be predicted can be any point in the point cloud to be coded
  • the current Morton code is the Morton code of the point to be predicted
  • the attribute information of the point to be predicted is predicted
  • other points corresponding to other Morton codes smaller than the current Morton code have completed the attribute information prediction, and the corresponding attribute reconstruction information is generated.
  • the encoder when the encoder predicts the attribute information of the point to be predicted, it needs to determine the Morton code of the point to be predicted first to obtain the current Morton code.
  • Step 102 Based on the current Morton code, determine the target Morton code corresponding to the point to be predicted according to the preset neighbor information table; wherein, the preset neighbor information table is used for the relationship between the neighboring position of the point to be predicted and the preset reference point. The coordinate difference between is determined.
  • the encoder may determine the target Morton code corresponding to the point to be predicted based on the current Morton code according to the preset neighbor information table.
  • the target Morton code can represent the Morton code corresponding to the neighboring position around the point to be predicted.
  • the preset neighbor information table can represent the coordinate difference between the neighboring position around the point to be predicted and the preset reference point.
  • the adjacent position of the point to be predicted may include coplanar adjacent points that are coplanar adjacent to the point to be predicted, and may also include collinear adjacent points that are collinearly adjacent to the point to be predicted.
  • the preset reference point when predicting the attribute information of the point to be predicted, if the point to be predicted is taken as the spatial center of the point cloud to be coded, then the preset reference point may be the point to be predicted as The coordinate origin of the center of the space. Specifically, based on the same preset reference point, the difference between the distance between the preset reference point and the point to be predicted and the distance between the preset reference point and the adjacent position of the point to be predicted is calculated to obtain The coordinate difference between the adjacent position and the point to be predicted.
  • the preset reference point may be the point with the smallest Morton code in the point cloud to be coded.
  • Figure 8 is a schematic diagram of adjacent positions. As shown in Figure 8, the preset reference point is O, the point to be predicted is A, and B, C and D that are coplanar adjacent to A are coplanar adjacent points. E, F, and G that are adjacent to each other are collinear adjacent points.
  • the encoder performs octree segmentation. Therefore, for the point to be predicted, there are 26 adjacent positions around it according to the unit distance. However, because the encoder treats When encoding the attribute information of the code point cloud, the attribute information is predicted in the order of Morton code from small to large. Therefore, the encoder only needs to consider the points whose Morton code is smaller than the current Morton code. For example, Just consider B, C, D, E, F, and G in Figure 2 above.
  • the encoder before the encoder determines the target Morton code corresponding to the point to be predicted based on the current Morton code according to the preset neighbor information table, it needs to first establish the preset phase corresponding to the point to be predicted. Neighbor information table. In other words, the preset neighbor information table is established based on the points to be predicted.
  • the encoder when the encoder establishes the preset neighbor information table corresponding to the point to be predicted, it can operate on the current Morton code (cur_pos) of the point to be predicted. Specifically, the encoder You can first locate the Morton code (base_pos) of the preset reference point, and then calculate the coordinate difference between the preset reference point and the adjacent position of the point to be predicted based on the Morton code of the preset reference point, and then continue Morton coding is performed on these coordinate differences, so that a preset neighbor information table corresponding to the points to be predicted can be established.
  • the adjacent positions of the points to be predicted may include coplanar adjacent points that are coplanar adjacent to the point to be predicted, and collinear adjacent points that are coplanar and adjacent to the point to be predicted. Therefore, when the encoder establishes the preset neighbor information table corresponding to the point to be predicted, it can respectively calculate the first coordinate difference between the preset reference point and the coplanar adjacent points, and calculate the preset reference point and the collinear phase. For the second coordinate difference between adjacent points, Morton encoding can be performed on the first coordinate difference to obtain the coplanar Morton code corresponding to the coplanar adjacent points.
  • Morton encoding can be performed on the second coordinate difference to obtain The collinear Morton code corresponding to the collinear adjacent points.
  • the encoder can establish a preset neighbor information table corresponding to the point to be predicted based on the coplanar Morton code and the collinear Morton code.
  • the encoder may determine the to-be-predicted based on the preset neighbor information table corresponding to the current Morton code.
  • the encoder when the encoder determines the target Morton code corresponding to the point to be predicted based on the current Morton code according to the preset neighbor information table, since the preset neighbor information table stores the target Morton code, Morton code after Morton encoding is performed on the coordinate difference between the preset reference point and the adjacent position. Therefore, the encoder can extract the Morton of the coordinate difference corresponding to the adjacent position from the preset adjacent information table. Code, the Morton code of the coordinate difference can be further used to determine the target Morton code.
  • the encoder is performing the target Morton code
  • the encoder is performing target Morton code
  • the adjacent type first, where the adjacent type may include coplanar adjacent and collinear adjacent, and then based on the determined adjacent type, the common adjacent information table can be further extracted. Planar Morton code or collinear Morton code, and determine the target Morton code based on coplanar Morton code or collinear Morton code.
  • the distance between the coplanar adjacent point and it is 1, then the distance between the coplanar adjacent point and the point is Based on the principle that the closer the distance, the stronger the correlation, the adjacent types of coplanar adjacent can be selected first, and then the coplanar Morton code can be extracted from the preset adjacent information table, so as to use the coplanar Morton code to determine the target model. Pause.
  • the target Morton code can represent the Morton code corresponding to the neighboring position around the point to be predicted. Therefore, the encoder can use the target Morton code to treat the neighboring neighboring points around the prediction point. Click to find and confirm.
  • Step 103 Determine whether there are adjacent points of the point to be predicted in the point cloud to be coded according to the target Morton code.
  • the encoder after the encoder determines the target Morton code corresponding to the point to be predicted based on the current Morton code according to the preset neighbor information table, it can determine the point cloud to be encoded according to the target Morton code Whether there are adjacent points to the point to be predicted. In other words, the encoder can use Morton codes corresponding to adjacent positions around the point to be predicted to further determine whether there are points adjacent to the point to be predicted in the coded point cloud.
  • the encoder determines the target Morton code, it cannot directly determine the neighboring points of the point to be predicted based on the target Morton code. This is because the point cloud is parallel in space. It is not evenly distributed, and the adjacent points of the points to be predicted do not necessarily have adjacent points. That is to say, the target Morton code determined according to the adjacent positions of the points to be predicted may not really be in the point cloud to be coded. Therefore, after determining the target Morton code, the encoder needs to determine whether there are adjacent points of the point to be predicted in the point cloud to be coded according to the target Morton code.
  • the encoder after obtaining the Morton code of each point, the encoder will sort all the Morton codes of all points in ascending order to generate the points to be coded.
  • the point cloud sequence set corresponding to the cloud Therefore, after the encoder determines the target Morton code, it can use the point cloud sequence set corresponding to the point cloud to be encoded, combined with the target Morton code, to further determine whether there are adjacent points to be predicted Click to judge.
  • the encoder may first obtain the point cloud of the point cloud to be coded when judging whether there are adjacent points of the point to be predicted in the coded point cloud according to the point cloud sequence set and the target Morton code. Sequence collection, and then use the target Morton code to perform query processing in the point cloud sequence collection, and the query result can be obtained. If the query result is that the target Morton code exists in the point cloud sequence collection, the encoder can determine the point cloud to be coded There are adjacent points corresponding to the points to be predicted. That is to say, in this application, after determining the target Morton code, the encoder directly searches for the existence of the target Morton code in the point cloud sequence set. If it exists, it can be considered that the point to be predicted has adjacent points in the space. ; Correspondingly, if it does not exist, it can be considered that the point to be predicted does not have an adjacent point in the space.
  • the encoder when it performs query processing in the point cloud sequence set based on the target Morton code, it can directly traverse each query point cloud sequence set according to the target Morton code. Morton code to obtain the query result; according to the target Morton code, the query processing of the point cloud sequence set can also be performed according to the preset query algorithm to obtain the query result.
  • the encoder when the encoder performs query processing in the point cloud sequence collection based on the target Morton code, it can either use the traversal method used for the point cloud sequence collection, or it can be other pairs of points. Cloud sequence collection for fast search algorithm.
  • Step 104 If there are adjacent points in the point cloud to be coded, predict the attribute prediction value of the point to be predicted based on the attribute reconstruction information of the adjacent point.
  • the encoder judges whether there are adjacent points of the point to be predicted in the coded point cloud according to the target Morton code, if there are adjacent points of the point to be predicted in the point cloud to be coded, then the encoder The information can be directly reconstructed based on the attribute information of the adjacent points of the point to be predicted, and the attribute information of the point to be predicted can be predicted to obtain the attribute prediction value.
  • the encoder may first obtain the neighboring points when predicting the attribute prediction value of the point to be predicted based on the attribute reconstruction information of the neighboring points. Then calculate the mean value of the reconstructed attribute value to obtain the mean value corresponding to the reconstructed attribute value, and then the mean value can be determined as the predictive value of the attribute.
  • the adjacent points of the points to be predicted may be coplanar adjacent points that are coplanar and adjacent to the point to be predicted, or they may be collinearly adjacent to the point to be predicted.
  • the encoder determines that the adjacent points of the points to be predicted are coplanar adjacent points or collinear adjacent points, then the encoder can obtain the co-linear adjacent points when obtaining the attribute reconstruction values of the adjacent points. The reconstructed value of the first attribute corresponding to the neighboring points of the plane, or obtaining the reconstructed value of the second attribute corresponding to the collinear neighbors.
  • the encoder is performing the reconstruction of the attribute value.
  • the first average value corresponding to at least one first reconstruction value can be calculated, or the second average value corresponding to at least one second reconstruction value can be calculated.
  • the encoder can calculate the first average value or the second average value. The value is determined as the attribute prediction value, thereby completing the prediction of the attribute information of the point to be predicted.
  • the encoder determines that the adjacent points of the point to be predicted are coplanar adjacent points and collinear adjacent points, then when the encoder obtains the attribute reconstruction values of the adjacent points, The first attribute reconstruction value corresponding to the coplanar adjacent points can be obtained, and at the same time, the second attribute reconstruction value corresponding to the collinear adjacent points can be obtained.
  • the encoder is performing the reconstruction of the attribute value.
  • a weighted average calculation can be performed on the reconstructed value of the first attribute and the reconstructed value of the second attribute according to the preset weight, so that the weighted average can be obtained.
  • the encoder can determine the weighted average value as the attribute prediction value, thereby completing the prediction of the attribute information of the point to be predicted.
  • the encoder when the encoder performs a weighted average calculation on the reconstruction value of the first attribute and the reconstruction value of the second attribute by using the preset weight, the reconstruction value of the first attribute and the reconstruction value of the second attribute can be calculated separately.
  • the reconstruction values are assigned different weight values. Specifically, based on the principle that the closer the distance, the stronger the correlation, the weight value corresponding to the first attribute reconstruction value should be greater than the weight value corresponding to the second attribute reconstruction value.
  • the point to be predicted has multiple adjacent points such as coplanar adjacent points and collinear adjacent points, for example, there are 6 adjacent points to predict the attribute information of the point to be predicted, including 3 coplanar adjacent points and 3 collinear adjacent points.
  • the encoder can perform a distance-based weighted average operation on the attribute reconstruction values of all adjacent points, so as to realize the prediction of the attribute information of the point to be predicted, and obtain the attribute prediction value of the point to be predicted.
  • the encoder can use formula (2) to predict the attribute information of the points to be predicted:
  • d ij is the distance between the adjacent point and the point to be predicted
  • f(d ij ) is a function related to d ij , that is, according to the distance between each adjacent point and the point to be predicted
  • the encoder when the encoder predicts the attribute information of the point to be predicted, it can simultaneously use the first attribute reconstruction value and the collinear phase of the coplanar adjacent points of the point to be predicted.
  • the second attribute reconstruction value of the neighboring point determines the attribute prediction value of the point to be predicted.
  • the attribute predicted value of the point to be predicted Among them, based on the principle that the closer the distance, the stronger the correlation, the closer coplanar neighboring points can be preferentially selected to predict the attribute information of the points to be predicted.
  • the encoder may first search for coplanar adjacent points with a distance of 1, and if it exists, use the average value of the attribute reconstruction values of these coplanar adjacent points as the attribute prediction value of the point to be predicted ; If there is no coplanar adjacent point of the point to be predicted in the point cloud to be coded, then continue to search for a distance of Collinear adjacent points, and then use the average value of the attribute reconstruction values of these collinear adjacent points as the attribute prediction value of the point to be predicted.
  • Figure 9 is a schematic diagram of the second implementation process of the attribute information prediction method.
  • the encoder determines whether there are adjacent points in the coded point cloud according to the target Morton code, that is, step After 103, the method for the encoder to predict the attribute information of the point to be predicted may further include the following steps:
  • Step 105 If there are no adjacent points in the coded point cloud, use the previous Morton code corresponding to the current Morton code to predict the attribute prediction value of the point to be predicted.
  • the encoder after the encoder judges whether there are adjacent points of the point to be predicted in the coded point cloud according to the target Morton code, if there are no adjacent points of the point to be predicted in the point cloud to be coded, then the code Therefore, the encoder needs to use the previous Morton code corresponding to the current Morton code to predict the attribute information of the point to be predicted, so as to obtain the attribute information of the point to be predicted. The predicted value of the attribute of the point.
  • the encoder when the encoder uses the previous Morton code corresponding to the current Morton code to predict the attribute prediction value of the point to be predicted, it may first determine the previous Morton code from the point cloud to be coded For the corresponding reconstructed point, the attribute reconstruction value of the reconstructed point can then be obtained, and the attribute reconstruction value of the reconstructed point can be determined as the attribute prediction value of the point to be predicted.
  • the attribute reconstruction value of the point is used as the attribute prediction value of the point to be predicted to complete the prediction of the attribute information of the point to be predicted.
  • the encoder can first search for the current Morton code from the point cloud sequence set of the point cloud to be coded The previous Morton code. Among them, all Morton codes of all points in the point cloud to be coded are stored in the point cloud sequence set in ascending order.
  • Figure 10 is a schematic diagram of the third implementation process of the attribute information prediction method.
  • the encoder determines whether there are adjacent points in the coded point cloud according to the target Morton code, that is, step After 103 and before predicting the attribute prediction value of the point to be predicted based on the attribute reconstruction information of the neighboring points, that is, before step 104, the method for the encoder to predict the attribute information of the point to be predicted may further include the following steps:
  • Step 106 Determine the reconstructed point corresponding to the previous Morton code from the point cloud to be coded.
  • Step 107 Determine the reconstructed point as the neighboring point of the point to be predicted.
  • the encoder after the encoder judges whether there are adjacent points of the point to be predicted in the coded point cloud according to the target Morton code, if there are no adjacent points of the point to be predicted in the point cloud to be coded, that is, In other words, there are no coplanar adjacent points and collinear adjacent points around the point to be predicted, so the encoder can first determine the reconstructed point corresponding to the previous Morton code from the point cloud to be coded.
  • the encoder can determine the neighboring point of the point to be predicted by the reconstructed point. That is to say, in this application, based on the target Morton code, if there is no adjacent point of the point to be predicted in the point cloud to be coded, then directly reconstruct the corresponding Morton code of the current Morton code
  • the points are regarded as adjacent points of the points to be predicted, and then the method of step 104 is followed to complete the prediction of the attribute information of the points to be predicted.
  • step 103 that is, after the encoder determines whether there are adjacent points in the point cloud to be encoded according to the target Morton code, if there are points to be predicted in the point cloud to be encoded
  • the encoder can directly predict the attribute prediction value of the point to be predicted based on the attribute reconstruction information of the adjacent point; if there is no adjacent point of the point to be predicted in the point cloud to be coded, the encoder can start from the point to be predicted.
  • the adjacent points of the points can continue to predict the attribute prediction value of the point to be predicted based on the attribute reconstruction information of the adjacent points.
  • the encoder can first compare the current Morton in the point cloud sequence set.
  • the reconstructed point corresponding to the previous Morton code of the frame is regarded as the neighboring point of the point to be predicted, and then the attribute prediction value of the point to be predicted is predicted according to the attribute reconstruction information of the neighboring point.
  • the encoder can calculate the prediction residual of the point to be predicted according to the attribute prediction value, and then The prediction residual can be coded to generate a bitstream.
  • the encoder predicts the attribute information of the point to be predicted, based on the preset neighbor information table, the information of the point to be predicted can be used.
  • the current Morton code determines the target Morton code corresponding to the adjacent position around the point to be predicted. If there is an adjacent point to the point to be predicted in the adjacent position in the point cloud, the codec can directly use the phase.
  • the attribute reconstruction value prediction of the neighboring points obtains the attribute prediction value of the point to be predicted. It is precisely because the correlation between the point to be predicted and the neighboring point is stronger, so the prediction of the attribute information of the point to be predicted can be achieved through the neighboring points.
  • this application directly obtains the Morton code of the neighboring point according to the current Morton code of the point to be predicted, and when it is determined that the neighboring point does exist after the query, the reconstructed attribute value of the neighboring point is used to treat the predicted point It uses the spatial correlation of the point cloud to a greater extent than the related technical solutions of PCEM.
  • PSNR Peak Signal to Noise Ratio
  • the encoder can also apply the method from step 101 to step 107 to the intra-layer prediction of the point cloud to be coded.
  • the method for predicting attribute information proposed in the present application can make full use of the spatial correlation of point clouds, so that the prediction residuals are smaller, and it is more suitable for subsequent quantization and entropy coding. Under the premise of PSNR performance, higher gain is achieved.
  • Table 1 is the performance of the attribute information prediction method proposed by this application. It can be seen from Table 1 that compared with the related technical solutions of PCEM, for different targets, under the same objective quality, the attribute information proposed by this application is used. In the prediction method, the code rate is reduced, and the performance of the encoder is improved.
  • the embodiment of the application provides a method for predicting attribute information.
  • the encoder determines the current Morton code of the point to be predicted in the point cloud to be coded; based on the current Morton code, the corresponding point to be predicted is determined according to the preset neighbor information table.
  • the target Morton code wherein, the preset neighbor information table is used to determine the coordinate difference between the adjacent position of the point to be predicted and the preset reference point; according to the target Morton code, it is judged whether there is a point cloud to be coded.
  • the adjacent points of the predicted point; if there are adjacent points in the point cloud to be coded, the attribute prediction value of the point to be predicted is predicted according to the attribute reconstruction information of the adjacent points.
  • the codec predicts the attribute information of the point to be predicted, based on the preset neighbor information table, the current Morton code of the point to be predicted can be used to determine the surrounding area of the point to be predicted.
  • the target Morton code corresponding to the adjacent position of the point cloud.
  • the codec can directly use the attribute reconstruction value of the adjacent point to predict and obtain the to-be-predicted
  • the attribute prediction value of a point is precisely because the correlation between the point to be predicted and the adjacent point is stronger, so the prediction of the attribute information of the point to be predicted through the adjacent point can effectively improve the accuracy of the prediction and greatly reduce The prediction residual is reduced, thereby improving the coding efficiency.
  • FIG. 11 is a fourth schematic diagram of the implementation process of the method for predicting attribute information.
  • the adjacent position of the point to be predicted may include the same as the point to be predicted.
  • Step 201 Position a preset reference point.
  • Step 202 Calculate the first coordinate difference between the preset reference point and the coplanar adjacent points, and calculate the second coordinate difference between the preset reference point and the coplanar adjacent points;
  • Step 203 Perform Morton coding on the first coordinate difference to obtain the coplanar Morton code corresponding to the coplanar adjacent points, and perform Morton coding on the second coordinate difference to obtain the collinear Morton code corresponding to the collinear adjacent points ;
  • Step 204 Based on the coplanar Morton code and the collinear Morton code, establish a preset neighbor information table corresponding to the point to be predicted.
  • the encoder when the encoder establishes the preset neighbor information table, it needs to locate the preset reference point first, where the preset reference point represents the space centered on the point to be predicted in the point cloud to be coded. Origin coordinates.
  • the preset reference point may be the point with the smallest Morton code in the point cloud to be coded.
  • the coordinates of the point to be predicted are (1, 1, 2), and with the point to be predicted as the center of the space, the encoder may position the preset reference point coordinates as (0, 0, 0) .
  • the coordinates of the neighboring positions around the point to be predicted may be determined based on the preset reference point, for example, a certain neighboring position is determined
  • the coordinates of is (1, 1, 1).
  • the coordinate difference between the adjacent positions of the preset reference point and the point to be predicted may specifically include the first coordinate difference between the preset reference point and the coplanar adjacent points, It may also include the second coordinate difference between the preset reference point and the collinear adjacent point.
  • the encoder uses the preset reference point to calculate the coordinate difference between the preset reference point and the adjacent position, it can perform Morton encoding on the coordinate difference. , Get the corresponding Morton code.
  • the encoder after the encoder calculates the first coordinate difference between the preset reference point and the coplanar adjacent point, it can perform Morton encoding on the first coordinate difference to obtain the corresponding Morton code, namely coplanar Morton code; correspondingly, the encoder can perform Morton coding on the second coordinate difference after calculating the second coordinate difference between the preset reference point and the collinear adjacent point, so as to obtain the corresponding Morton code, that is, collinear Morton code.
  • the encoder after the encoder completes Morton encoding of the coordinate difference between the preset reference point and the adjacent position, it can establish preset adjacent information based on the obtained Morton code table. Specifically, the encoder can establish a preset neighboring information table by using the correspondence between neighboring positions and Morton codes. In other words, the preset neighbor information table can be used to determine Morton codes at neighboring positions.
  • the encoder can establish a preset neighbor information table corresponding to the point to be predicted based on the coplanar Morton code and the collinear Morton code. Specifically, the encoder can Preset the adjacent information table for the coplanar adjacent points of the predicted points and their corresponding coplanar Morton code storage values. At the same time, the collinear adjacent points of the points to be predicted and their corresponding collinear Morton codes can be stored The value presets the adjacent information table, thereby completing the establishment of the preset adjacent information table.
  • FIG. 12 is a schematic diagram five of the implementation process of the attribute information prediction method.
  • the encoder determines the point to be predicted based on the current Morton code according to the preset neighbor information table
  • the corresponding target Morton code method may include the following steps:
  • Step 102a Read the coplanar Morton code and the collinear Morton code corresponding to the point to be predicted from the preset neighbor information table.
  • Step 102b Perform a summation operation on the coplanar Morton code and the Morton code of the preset reference point to obtain a first sum value, and perform a summation operation on the collinear Morton code and the Morton code of the preset reference point to obtain The second sum value.
  • Step 102c Determine the first sum value and the second sum value as the target Morton code.
  • the encoder when the encoder uses the current Morton code and the preset neighbor information table corresponding to the point to be predicted to determine the target Morton code, it can first read the total value from the preset neighbor information table.
  • Surface Morton code and collinear Morton code that is to say, the encoder can first obtain the Morton code corresponding to the coplanar adjacent point of the point to be predicted from the preset adjacent information table, that is, the coplanar Morton code.
  • the Morton code corresponding to the collinear adjacent point of the point to be predicted can be obtained from the preset adjacent information table, that is, the collinear Morton code.
  • the coplanar Morton code and the collinear Morton code can be further used to determine the target Morton code.
  • the encoder can perform a summation operation on the coplanar Morton code and the Morton code of the preset reference point to obtain the first sum value.
  • the coplanar Morton code can represent the distance difference between the preset reference point and the coplanar adjacent point
  • the encoder adds the coplanar Morton code to the Morton code of the preset reference point.
  • the Morton code of the coplanar adjacent points can be directly obtained, that is, the first sum value can be used as the Morton code of the coplanar adjacent points of the point to be predicted, so the first sum value can be determined as the target Morton code .
  • the encoder can perform a summation operation on the collinear Morton code and the Morton code of the preset reference point to obtain the second sum value.
  • the collinear Morton code can represent the distance difference between the preset reference point and the collinear adjacent points
  • the encoder adds the collinear Morton code to the Morton code of the preset reference point.
  • the Morton code of the collinear adjacent points can be directly obtained, that is, the second sum value can be used as the Morton code of the collinear adjacent point of the point to be predicted, so the second sum value can be determined as the target Morton code .
  • the code of the point to be predicted may be determined first.
  • the adjacent type is selected to determine whether the adjacent type is a coplanar type or a collinear type. In other words, the encoder can choose to acquire only the Morton codes of the coplanar adjacent points of the points to be predicted, or choose to acquire only the Morton codes of the collinear adjacent points of the points to be predicted.
  • the method for the encoder to determine the target Morton code corresponding to the point to be predicted based on the current Morton code according to the preset neighbor information table may include the following steps:
  • Step 102d If the adjacent type is a coplanar type, read the coplanar Morton code corresponding to the point to be predicted from the preset adjacent information table.
  • Step 102e Perform a summation operation on the coplanar Morton code and the Morton code of the preset reference point to obtain a first sum value.
  • Step 102f Determine the first sum value as the target Morton code.
  • the encoder if the encoder first selects the adjacent type as coplanar adjacent, then the encoder only needs to read the coplanar Morton code corresponding to the point to be predicted from the preset adjacent information table, and then correct The coplanar Morton code and the Morton code of the preset reference point are summed to obtain the first sum value, and finally the first sum value can be determined as the target Morton code.
  • the encoder chooses to obtain only the Morton code of the coplanar adjacent points of the point to be predicted, the encoder is using the current Morton code and the preset phase corresponding to the point to be predicted.
  • the neighbor information table determines the target Morton code
  • the coplanar Morton code corresponding to the coplanar neighboring point of the point to be predicted can be first obtained from the preset neighbor information table. Then, the sum of the coplanar Morton code and the Morton code of the preset reference point can be further performed.
  • the coplanar Morton code can represent the distance difference between the preset reference point and the coplanar adjacent point, therefore, After the encoder adds the coplanar Morton code and the Morton code of the preset reference point, the first sum value can be determined as the target Morton code.
  • the encoder can preferentially select the adjacent type as coplanar adjacent, so that the prediction residual can be reduced, Reduce the output binary code stream as much as possible to improve coding efficiency.
  • the method for the encoder to determine the target Morton code corresponding to the point to be predicted based on the current Morton code according to the preset neighbor information table may further include the following steps:
  • Step 102g If the adjacent type is a collinear type, read the collinear Morton code corresponding to the point to be predicted from the preset adjacent information table.
  • Step 102h Perform a summation operation on the collinear Morton code and the Morton code of the preset reference point to obtain a second sum value.
  • Step 102i Determine the second sum value as the target Morton code.
  • the encoder if the encoder first selects the adjacent type as collinear adjacent, then the encoder only needs to read the collinear Morton code corresponding to the point to be predicted from the preset adjacent information table, and then correct The collinear Morton code and the Morton code of the preset reference point are summed to obtain the second sum value, and finally the second sum value can be determined as the target Morton code.
  • the encoder chooses to obtain only the Morton codes of the collinear adjacent points of the points to be predicted, the encoder is using the current Morton code and the preset phase corresponding to the points to be predicted.
  • the collinear Morton code corresponding to the collinear adjacent point of the point to be predicted may be first obtained from the preset adjacent information table. Then the collinear Morton code and the Morton code of the preset reference point can be further summed.
  • the collinear Morton code can represent the distance difference between the preset reference point and the collinear adjacent points, therefore, After the encoder adds the collinear Morton code and the Morton code of the preset reference point, the second sum value can be determined as the target Morton code.
  • the encoder can preferentially select the adjacent type as coplanar adjacent, but if the point cloud to be coded does not exist in the point cloud to be coded, the similarity is stronger. If the prediction points are coplanar adjacent points, then the encoder can select the adjacent type as collinear adjacent points, so that the prediction residuals can be reduced as much as possible to improve the coding efficiency.
  • the embodiment of the application provides a method for predicting attribute information.
  • the encoder determines the current Morton code of the point to be predicted in the point cloud to be coded; based on the current Morton code, the corresponding point to be predicted is determined according to the preset neighbor information table.
  • the target Morton code wherein, the preset neighbor information table is used to determine the coordinate difference between the adjacent position of the point to be predicted and the preset reference point; according to the target Morton code, it is judged whether there is a point cloud to be coded.
  • the adjacent points of the predicted point; if there are adjacent points in the point cloud to be coded, the attribute prediction value of the point to be predicted is predicted according to the attribute reconstruction information of the adjacent points.
  • the codec predicts the attribute information of the point to be predicted, based on the preset neighbor information table, the current Morton code of the point to be predicted can be used to determine the surrounding area of the point to be predicted.
  • the target Morton code corresponding to the adjacent position of the point cloud.
  • the codec can directly use the attribute reconstruction value of the adjacent point to predict and obtain the to-be-predicted
  • the attribute prediction value of a point is precisely because the correlation between the point to be predicted and the neighboring point is stronger, so the prediction of the attribute information of the point to be predicted through the neighboring point can effectively improve the accuracy of the prediction and greatly reduce The prediction residual is reduced, thereby improving the coding efficiency.
  • the adjacent points may specifically include coplanar adjacent points that are coplanar and adjacent to the point to be predicted.
  • the adjacent points may also include collinear adjacent points that are collinearly adjacent to the point to be predicted. Therefore, the method for the encoder to predict the attribute prediction value of the point to be predicted according to the attribute reconstruction information of the adjacent point may include the following steps:
  • Step 301 If the neighboring point is a coplanar neighboring point that is coplanar neighboring with the point to be predicted, obtain the first attribute reconstruction value corresponding to the coplanar neighboring point.
  • Step 302 Calculate the first average value of the first attribute reconstruction value, and determine the first average value as the attribute predicted value.
  • the encoder after the encoder judges whether there are adjacent points of the point to be predicted in the coded point cloud according to the target Morton code, if there are adjacent points of the point to be predicted in the point cloud to be coded, and there are The adjacent points of the point to be predicted are only coplanar adjacent points that are coplanar adjacent to the point to be predicted, then the encoder can obtain the first attribute corresponding to the coplanar adjacent point when obtaining the attribute reconstruction value of the adjacent point Rebuild value.
  • the encoder can calculate at least one first reconstruction when calculating the mean value of the attribute reconstruction value. The value corresponds to the first average value, and then the encoder can determine the first average value as the attribute prediction value, thereby completing the prediction of the attribute information of the point to be predicted.
  • the encoder can use the following formula (4) to calculate the average value of the attribute reconstruction values of all adjacent points to obtain the point to be predicted. Predicted value of attribute of predicted point:
  • a 1j is the reconstructed value of the attribute of the coplanar adjacent point.
  • the method for the encoder to predict the attribute prediction value of the point to be predicted according to the attribute reconstruction information of the neighboring point may include the following steps:
  • Step 303 If the adjacent points are collinear adjacent points that are collinear adjacent to the point to be predicted, obtain the second attribute reconstruction value corresponding to the collinear adjacent point.
  • Step 304 Calculate a second average value of the second attribute reconstruction value, and determine the second average value as the attribute predicted value.
  • the encoder after the encoder judges whether there are adjacent points of the point to be predicted in the coded point cloud according to the target Morton code, if there are adjacent points of the point to be predicted in the point cloud to be coded, and there are The adjacent points of the point to be predicted are only the collinear adjacent points that are collinearly adjacent to the point to be predicted, then the encoder can obtain the second attribute corresponding to the collinear adjacent point when obtaining the attribute reconstruction value of the adjacent point Rebuild value.
  • the encoder can calculate at least one second reconstruction when calculating the mean value of the attribute reconstruction value. The second average value corresponding to the value, and then the encoder can determine the second average value as the attribute prediction value, thereby completing the prediction of the attribute information of the point to be predicted.
  • the encoder can use the following formula (5) to calculate the average value of the attribute reconstruction values of all adjacent points to obtain the point to be predicted. Predicted value of attribute of predicted point:
  • I the predicted value of the attribute of the current point
  • a 2j is the reconstructed value of the attribute of the collinear adjacent point.
  • the method for the encoder to predict the attribute prediction value of the point to be predicted according to the attribute reconstruction information of the neighboring point may include the following steps:
  • Step 305 If the adjacent points are coplanar adjacent points that are coplanar adjacent to the point to be predicted, and collinear adjacent points that are collinearly adjacent to the point to be predicted, obtain the first coplanar adjacent point corresponding to the The reconstructed value of the attribute, and the reconstructed value of the second attribute corresponding to the collinear adjacent point.
  • Step 306 Perform a weighted average calculation on the reconstructed value of the first attribute and the reconstructed value of the second attribute according to the preset weight to obtain a weighted average.
  • Step 307 Determine the weighted average value as the attribute prediction value.
  • the encoder determines whether there are adjacent points of the point to be predicted in the coded point cloud according to the target Morton code, if there are adjacent points of the point to be predicted in the point cloud to be coded, and the point to be predicted is
  • the adjacent points of a point include both coplanar adjacent points and collinear adjacent points, so when the encoder obtains the attribute reconstruction value of the adjacent point, it can obtain the first attribute reconstruction value corresponding to the coplanar adjacent point, At the same time, the second attribute reconstruction value corresponding to the collinear adjacent points is obtained.
  • the encoder since the point to be predicted has at least one coplanar adjacent coplanar adjacent point, and at least one collinear adjacent collinear adjacent point, the encoder is in the When calculating the average of the reconstructed value, the first attribute reconstruction value and the second attribute reconstruction value may be calculated on a weighted average according to the preset weight, so that the weighted average can be obtained.
  • the encoder can assign different weight values to the first attribute reconstruction value and the second attribute reconstruction value based on the principle that the closer the distance, the stronger the correlation. Specifically, the weight value corresponding to the first attribute reconstruction value should be greater than the weight value corresponding to the second attribute reconstruction value.
  • the encoder when the encoder predicts the attribute information of the point to be predicted, it can use both the first attribute reconstruction value of the coplanar adjacent point of the point to be predicted and the first attribute reconstruction value of the coplanar adjacent point of the point to be predicted.
  • the second attribute reconstruction value determines the attribute prediction value of the point to be predicted. You can also choose to use the first attribute reconstruction value of the coplanar adjacent points of the point to be predicted, or the second attribute reconstruction value of the collinear adjacent points to determine the attribute prediction value of the point to be predicted. Attribute predicted value.
  • the encoder can first search for coplanar adjacent points with a distance of 1, and if they exist, use the average value of the attribute reconstruction values of these coplanar adjacent points as the attribute prediction value of the point to be predicted; if the point cloud to be coded is There is no coplanar adjacent point of the point to be predicted, then the search distance is Collinear adjacent points, and then use the average of the attribute reconstruction values of these collinear adjacent points as the attribute predicted value of the point to be predicted.
  • the embodiment of the application provides a method for predicting attribute information.
  • the encoder determines the current Morton code of the point to be predicted in the point cloud to be coded; based on the current Morton code, the corresponding point to be predicted is determined according to the preset neighbor information table.
  • the target Morton code wherein, the preset neighbor information table is used to determine the coordinate difference between the adjacent position of the point to be predicted and the preset reference point; according to the target Morton code, it is judged whether there is a point cloud to be coded.
  • the adjacent points of the predicted point; if there are adjacent points in the point cloud to be coded, the attribute prediction value of the point to be predicted is predicted according to the attribute reconstruction information of the adjacent points.
  • the codec predicts the attribute information of the point to be predicted, based on the preset neighbor information table, the current Morton code of the point to be predicted can be used to determine the surrounding area of the point to be predicted.
  • the target Morton code corresponding to the adjacent position of the point cloud.
  • the codec can directly use the attribute reconstruction value of the adjacent point to predict and obtain the to-be-predicted
  • the attribute prediction value of a point is precisely because the correlation between the point to be predicted and the neighboring point is stronger, so the prediction of the attribute information of the point to be predicted through the neighboring point can effectively improve the accuracy of the prediction and greatly reduce The prediction residual is reduced, thereby improving the coding efficiency.
  • FIG. 13 is a schematic diagram of the prediction framework of attribute information.
  • the method for the encoder to predict the attribute information by using the current Morton code may include the following steps:
  • Step 401 Calculate the current Morton code of the point to be predicted.
  • the encoder can first determine the Morton code of the point to be predicted in the point cloud to be coded, that is, the current Morton code.
  • Step 402 Select the adjacent type of the adjacent point.
  • the encoder can select the adjacent type before determining the target Morton code of the adjacent point.
  • the adjacent type may include the coplanar type and the collinear type, and then based on the adjacent type, the selection of the coplanar Morton code or the collinear Morton code is further obtained.
  • the encoder cannot determine whether there are adjacent points of the point to be predicted in the point cloud to be encoded. Therefore, the adjacent points here are assumed to be predicted. There are points around the neighboring positions.
  • Step 403 Determine the target Morton code of the neighboring point based on the neighboring type.
  • the adjacent type selected by the encoder is coplanar adjacent, then the coplanar Morton code corresponding to the coplanar adjacent point can be obtained from the pre-established preset adjacent information table and used as the target Morton code ; If the adjacent type selected by the encoder is collinear adjacent, then the collinear Morton code corresponding to the collinear adjacent point can be obtained from the pre-established preset adjacent information table, and it is used as the target Morton code.
  • Step 404 Determine whether there are adjacent points, if there are, then execute step 405; if not, then execute step 406.
  • the encoder can use the target Morton code to determine whether there are adjacent points in the point cloud to be encoded. Specifically, the encoder can perform query processing in the point cloud sequence set of the point cloud to be encoded, that is, directly search in the point cloud sequence set Whether there is a target Morton code, if it exists, it can be considered that the point to be predicted has an adjacent point in the space; correspondingly, if it does not exist, it can be considered that the point to be predicted does not have an adjacent point in the space.
  • Step 405 Predict the attribute information of the point to be predicted by using the reconstructed value of the attribute of the neighboring point.
  • the encoder directly obtains the attribute prediction value of the point to be predicted according to the attribute reconstruction information of the adjacent point of the point to be predicted.
  • the encoder may perform average calculation on the attribute reconstruction values of adjacent points, and determine the average value of the attribute reconstruction values as the attribute prediction value.
  • Step 406 Use the previous Morton code of the current Morton code to predict the attribute information of the point to be predicted.
  • the encoder needs to use the previous Morton code corresponding to the current Morton code to obtain the attribute prediction value of the point to be predicted.
  • the encoder can determine the reconstructed point corresponding to the previous Morton code, and then can obtain the attribute reconstruction value of the reconstructed point, and determine the attribute reconstruction value of the reconstructed point as the attribute prediction value of the point to be predicted.
  • Step 407 Calculate the prediction residual corresponding to the point to be predicted.
  • Step 408 Generate a code stream.
  • the encoder After the encoder predicts and obtains the attribute prediction value of the point to be predicted, it can use the attribute prediction value to calculate the prediction residual, and then encode the prediction residual to obtain and output a binary code stream.
  • FIG. 14 another exemplary implementation of predicting attribute information is shown in FIG. 14 as a flowchart of the attribute information prediction algorithm.
  • the specific implementation process is It can include the following steps:
  • Step 501 Determine the current Morton code Cur_pos of the point to be predicted.
  • the encoder can first determine the Morton code of the point to be predicted in the point cloud to be coded, that is, the current Morton code Cur_pos.
  • Step 502 Locate the Morton code base_pos of the preset reference point.
  • the encoder operates on Cur_pos and locates to the Morton code base_pos of the reference point. Wherein, the encoder can pre-calculate the coordinate difference between the reference point base_pos and the adjacent point of the point to be predicted, perform Morton coding on these differences, and establish a preset table.
  • Step 503 Calculate and obtain the target Morton code neighbor_pos of the neighboring points based on base_pos.
  • Step 504 Based on neighbor_pos, search for the existence of the neighboring point Neighbor, if it does, then directly execute step 506; if it does not exist, execute step 505 first, and then continue to execute step 506.
  • the encoder can use the target Morton code to determine whether there are adjacent points in the point cloud to be encoded. Specifically, the encoder can perform query processing in the point cloud sequence set of the point cloud to be encoded, that is, directly search in the point cloud sequence set Whether there is a target Morton code, if it exists, it can be considered that the point to be predicted has an adjacent point in the space; correspondingly, if it does not exist, it can be considered that the point to be predicted does not have an adjacent point in the space.
  • Step 505 Use the point corresponding to the last Morton code lastMortonCode of the current Morton code as the adjacent point of the point to be predicted.
  • the encoder needs to use the last Morton code corresponding to the current Morton code to predict the attribute information of the point to be predicted.
  • the previous Morton code The frame code is the Morton code of the adjacent point of the point to be predicted, that is, the point corresponding to the last Morton code lastMortonCode of the current Morton code is regarded as the adjacent point of the point to be predicted.
  • Neighbor lastMortonCode.
  • Step 506 Determine the attribute prediction value Pred of the point to be predicted by using the reconstructed value neighbor[i] of the neighboring point.
  • Step 507 Calculate the prediction residual Residual of the point to be predicted based on Pred.
  • the encoder After the encoder predicts and obtains the attribute prediction value of the point to be predicted, it can use the attribute prediction value to calculate the prediction residual, and then encode the prediction residual to generate and output the attribute code stream.
  • the encoder can first compare the current Morton in the point cloud sequence set.
  • the reconstructed point corresponding to the previous Morton code of the frame is regarded as the neighboring point of the point to be predicted, and then the attribute prediction value of the point to be predicted is predicted according to the attribute reconstruction information of the neighboring point.
  • the embodiment of the application provides a method for predicting attribute information.
  • the encoder determines the current Morton code of the point to be predicted in the point cloud to be coded; based on the current Morton code, the corresponding point to be predicted is determined according to the preset neighbor information table.
  • the target Morton code wherein, the preset neighbor information table is used to determine the coordinate difference between the adjacent position of the point to be predicted and the preset reference point; according to the target Morton code, it is judged whether there is a point cloud to be coded.
  • the adjacent points of the predicted point; if there are adjacent points in the point cloud to be coded, the attribute prediction value of the point to be predicted is predicted according to the attribute reconstruction information of the adjacent points.
  • the codec predicts the attribute information of the point to be predicted, based on the preset neighbor information table, the current Morton code of the point to be predicted can be used to determine the surrounding area of the point to be predicted.
  • the target Morton code corresponding to the adjacent position of the point cloud.
  • the codec can directly use the attribute reconstruction value of the adjacent point to predict and obtain the to-be-predicted
  • the attribute prediction value of a point is precisely because the correlation between the point to be predicted and the adjacent point is stronger, so the prediction of the attribute information of the point to be predicted through the adjacent point can effectively improve the accuracy of the prediction and greatly reduce The prediction residual is reduced, thereby improving the coding efficiency.
  • FIG. 15 is a schematic diagram of the implementation process of the method for predicting attribute information. As shown in FIG. 15, the decoder predicts the point to be predicted.
  • the method of attribute information may include the following steps:
  • Step 601 Determine the current Morton code of the point to be predicted in the point cloud to be decoded.
  • the decoder may first determine the current Morton code of the point to be predicted in the point cloud to be decoded.
  • the geometric information of the point cloud to be decoded and the attribute information corresponding to the point cloud to be decoded are decoded separately.
  • the geometric information is decoded, the geometric information is reconstructed, and the decoding of the attribute information will depend on the reconstructed geometric information.
  • the decoder can use the set information of each point in the point cloud to be decoded to determine the Morton code of each point. After obtaining the Morton code of each point, the decoder can sort all the points in the point cloud to be decoded in ascending order to generate the corresponding Morton code of all points to be decoded. Point cloud sequence collection. Among them, all Morton codes of all points in the point cloud to be decoded are stored in the point cloud sequence set.
  • the decoder when the decoder decodes the attribute information of the point cloud to be decoded, it can predict the attribute information of all the points of the point cloud to be decoded in order of Morton code from small to large. .
  • the point to be predicted can be any point in the point cloud to be decoded, and the current Morton code is the Morton code of the point to be predicted, and the attribute information of the point to be predicted is predicted At this time, other points corresponding to other Morton codes smaller than the current Morton code have completed the attribute information prediction, and the corresponding attribute reconstruction information is generated.
  • the decoder when the decoder predicts the attribute information of the point to be predicted, it needs to determine the Morton code of the point to be predicted first to obtain the current Morton code.
  • Step 602 Based on the current Morton code, determine the target Morton code corresponding to the point to be predicted according to the preset neighbor information table; wherein, the preset neighbor information table is used to compare the neighboring position of the point to be predicted and the preset reference point. The coordinate difference between is determined.
  • the decoder may determine the target Morton code corresponding to the point to be predicted based on the current Morton code according to the preset neighbor information table.
  • the target Morton code can represent the Morton code corresponding to the neighboring position around the point to be predicted.
  • the preset neighbor information table can represent the coordinate difference between the neighboring position around the point to be predicted and the preset reference point.
  • the adjacent position of the point to be predicted may include coplanar adjacent points that are coplanar adjacent to the point to be predicted, and may also include collinear adjacent points that are collinearly adjacent to the point to be predicted.
  • the preset reference point when predicting the attribute information of the point to be predicted, if the point to be predicted is taken as the spatial center of the point cloud to be decoded, then the preset reference point may be the point to be predicted as The coordinate origin of the center of the space. Specifically, based on the same preset reference point, the difference between the distance between the preset reference point and the point to be predicted and the distance between the preset reference point and the adjacent position of the point to be predicted is calculated to obtain The coordinate difference between the adjacent position and the point to be predicted.
  • the preset reference point may be the point with the smallest Morton code in the point cloud to be decoded.
  • the decoder determines the target Morton code corresponding to the point to be predicted based on the current Morton code and according to the preset neighbor information table, it needs to first establish the preset phase corresponding to the point to be predicted. Neighbor information table. In other words, the preset neighbor information table is established based on the points to be predicted.
  • the decoder when the decoder establishes the preset neighbor information table corresponding to the point to be predicted, it can operate on the current Morton code (cur_pos) of the point to be predicted. Specifically, the decoder You can first locate the Morton code (base_pos) of the preset reference point, and then calculate the coordinate difference between the preset reference point and the adjacent position of the point to be predicted based on the Morton code of the preset reference point, and then continue Morton coding is performed on these coordinate differences, so that a preset neighbor information table corresponding to the points to be predicted can be established.
  • base_pos the decoder You can first locate the Morton code (base_pos) of the preset reference point, and then calculate the coordinate difference between the preset reference point and the adjacent position of the point to be predicted based on the Morton code of the preset reference point, and then continue Morton coding is performed on these coordinate differences, so that a preset neighbor information table corresponding to the points to be predicted can be established.
  • the adjacent positions of the points to be predicted may include coplanar adjacent points that are coplanar adjacent to the point to be predicted, and collinear adjacent points that are coplanar and adjacent to the point to be predicted. Therefore, when the decoder establishes the preset neighbor information table corresponding to the point to be predicted, it can respectively calculate the first coordinate difference between the preset reference point and the coplanar adjacent points, and calculate the preset reference point and the collinear phase. For the second coordinate difference between adjacent points, Morton encoding can be performed on the first coordinate difference to obtain the coplanar Morton code corresponding to the coplanar adjacent points.
  • Morton encoding can be performed on the second coordinate difference to obtain The collinear Morton code corresponding to the collinear adjacent points.
  • the decoder can establish a preset neighbor information table corresponding to the point to be predicted based on the coplanar Morton code and the collinear Morton code.
  • the decoder may determine the to-be-predicted based on the preset neighbor information table corresponding to the current Morton code The target Morton code corresponding to the point, where the target Morton code can represent the Morton code corresponding to the neighboring position around the point to be predicted.
  • the decoder when the decoder determines the target Morton code corresponding to the point to be predicted based on the current Morton code according to the preset neighbor information table, since the preset neighbor information table stores the target Morton code, Morton code after Morton decoding is performed on the coordinate difference between the preset reference point and the adjacent position. Therefore, the decoder can extract the Morton code of the coordinate difference corresponding to the adjacent position from the preset adjacent information table. Code, the Morton code of the coordinate difference can be further used to determine the target Morton code.
  • the decoder is performing the target Morton code
  • the decoder is performing target Morton code
  • the adjacent type first, where the adjacent type may include coplanar adjacent and collinear adjacent, and then based on the determined adjacent type, the common adjacent information table can be further extracted. Planar Morton code or collinear Morton code, and determine the target Morton code based on coplanar Morton code or collinear Morton code.
  • the distance between the coplanar adjacent point and it is 1, then the distance between the coplanar adjacent point and the point is Based on the principle that the closer the distance, the stronger the correlation, the adjacent types of coplanar adjacent can be selected first, and then the coplanar Morton code can be extracted from the preset adjacent information table, so as to use the coplanar Morton code to determine the target model. Pause.
  • the target Morton code can represent the Morton code corresponding to the neighboring position around the point to be predicted. Therefore, the decoder can use the target Morton code to treat the neighboring neighboring points around the prediction point. Click to find and confirm.
  • Step 603 Determine whether there are adjacent points of the point to be predicted in the point cloud to be decoded according to the target Morton code.
  • the decoder after the decoder determines the target Morton code corresponding to the point to be predicted based on the current Morton code according to the preset neighbor information table, it can determine the point cloud to be decoded according to the target Morton code Whether there are adjacent points to the point to be predicted. In other words, the decoder can use Morton codes corresponding to adjacent positions around the point to be predicted to further determine whether there is a point adjacent to the point to be predicted in the decoded point cloud.
  • the decoder after the decoder determines the target Morton code, it cannot directly determine the neighboring points of the point to be predicted according to the target Morton code. This is because the point cloud is parallel in space. It is not evenly distributed, and there may not really be adjacent points in the adjacent positions of the points to be predicted, that is to say, the target Morton code determined according to the adjacent positions of the points to be predicted may not really be in the point cloud to be decoded Therefore, after determining the target Morton code, the decoder also needs to determine whether there are adjacent points of the point to be predicted in the point cloud to be decoded according to the target Morton code.
  • the decoder after obtaining the Morton code of each point, the decoder will sort all Morton codes of all points in ascending order to generate the points to be decoded.
  • the point cloud sequence set corresponding to the cloud Therefore, after the decoder determines the target Morton code, it can use the point cloud sequence set corresponding to the point cloud to be decoded, combined with the target Morton code, to further determine whether there are adjacent points to be predicted Click to judge.
  • the decoder may first obtain the point cloud of the point cloud to be decoded when judging whether there are adjacent points of the point to be predicted in the decoded point cloud according to the point cloud sequence set and the target Morton code. Sequence collection, and then use the target Morton code to perform query processing in the point cloud sequence collection, and the query result can be obtained. If the query result is that the target Morton code exists in the point cloud sequence collection, then the decoder can determine the point cloud to be decoded There are adjacent points corresponding to the points to be predicted. That is to say, in this application, after the decoder determines the target Morton code, it directly searches for the existence of the target Morton code in the point cloud sequence set. If it exists, it can be considered that the point to be predicted has adjacent points in space. ; Correspondingly, if it does not exist, it can be considered that the point to be predicted does not have an adjacent point in the space.
  • the decoder when the decoder performs query processing in the point cloud sequence set based on the target Morton code, it can directly traverse each query point cloud sequence set according to the target Morton code. Morton code to obtain the query result; according to the target Morton code, the query processing of the point cloud sequence set can also be performed according to the preset query algorithm to obtain the query result.
  • the decoder when the decoder performs query processing in the point cloud sequence set based on the target Morton code, it can either use the traversal method used for the point cloud sequence set or other point cloud sequence sets. Cloud sequence collection for fast search algorithm.
  • Step 604 If there are adjacent points in the point cloud to be decoded, predict the attribute prediction value of the point to be predicted based on the attribute reconstruction information of the adjacent point.
  • the decoder judges whether there are adjacent points of the point to be predicted in the decoded point cloud according to the target Morton code, if there are adjacent points of the point to be predicted in the point cloud to be decoded, the decoder The information can be directly reconstructed based on the attribute information of the adjacent points of the point to be predicted, and the attribute information of the point to be predicted can be predicted to obtain the attribute prediction value.
  • the decoder may first obtain the adjacent point when predicting the attribute prediction value of the point to be predicted based on the attribute reconstruction information of the adjacent point. Then calculate the mean value of the reconstructed attribute value to obtain the mean value corresponding to the reconstructed attribute value, and then the mean value can be determined as the predictive value of the attribute.
  • the adjacent points of the points to be predicted may be coplanar adjacent points that are coplanar and adjacent to the point to be predicted, or they may be collinearly adjacent to the point to be predicted. Collinear adjacent points. Therefore, if the decoder determines that the adjacent points of the points to be predicted are coplanar adjacent points or collinear adjacent points, then the decoder can obtain the co-linear adjacent points when obtaining the attribute reconstruction values of the adjacent points. The reconstructed value of the first attribute corresponding to the neighboring points of the plane, or obtaining the reconstructed value of the second attribute corresponding to the collinear neighbors.
  • the decoder is performing the reconstruction of the attribute value.
  • the first average value corresponding to at least one first reconstruction value can be calculated, or the second average value corresponding to at least one second reconstruction value can be calculated.
  • the decoder can calculate the first average value or the second average value. The value is determined as the attribute prediction value, thereby completing the prediction of the attribute information of the point to be predicted.
  • the decoder determines that the adjacent points of the points to be predicted are coplanar adjacent points and collinear adjacent points, then when the decoder obtains the attribute reconstruction values of the adjacent points, The first attribute reconstruction value corresponding to the coplanar adjacent points can be obtained, and at the same time, the second attribute reconstruction value corresponding to the collinear adjacent points can be obtained.
  • the decoder since the point to be predicted has at least one coplanar adjacent coplanar adjacent point, and at least one collinear adjacent collinear adjacent point, the decoder is performing the reconstruction of the attribute value.
  • a weighted average calculation can be performed on the reconstructed value of the first attribute and the reconstructed value of the second attribute according to the preset weight, so that the weighted average can be obtained.
  • the decoder can determine the weighted average value as the attribute prediction value, thereby completing the prediction of the attribute information of the point to be predicted.
  • the decoder when the decoder uses a preset weight to perform a weighted average calculation on the first attribute reconstruction value and the second attribute reconstruction value, it can separately calculate the first attribute reconstruction value and the second attribute reconstruction value.
  • the reconstruction values are assigned different weight values. Specifically, based on the principle that the closer the distance, the stronger the correlation, the weight value corresponding to the first attribute reconstruction value should be greater than the weight value corresponding to the second attribute reconstruction value.
  • the point to be predicted has multiple adjacent points such as coplanar adjacent points and collinear adjacent points, for example, there are 6 adjacent points to predict the attribute information of the point to be predicted, including 3 coplanar adjacent points and 3 collinear adjacent points.
  • the decoder can perform a distance-based weighted average operation on the attribute reconstruction values of all adjacent points, so as to realize the prediction of the attribute information of the points to be predicted and obtain the attribute prediction values of the points to be predicted. That is to say, according to the distance between each adjacent point and the point to be predicted, the correlation decreases as the distance increases, so the attribute reconstruction value of the adjacent point with a smaller distance is given greater weight.
  • the decoder when the decoder predicts the attribute information of the point to be predicted, it can simultaneously use the first attribute reconstruction value and the collinear phase of the coplanar adjacent points of the point to be predicted.
  • the second attribute reconstruction value of the neighboring point determines the attribute prediction value of the point to be predicted.
  • the attribute predicted value of the point to be predicted Among them, based on the principle that the closer the distance, the stronger the correlation, the closer coplanar neighboring points can be preferentially selected to predict the attribute information of the points to be predicted.
  • the decoder may first search for coplanar adjacent points with a distance of 1, and if it exists, use the average value of the attribute reconstruction values of these coplanar adjacent points as the attribute prediction value of the point to be predicted ; If there is no coplanar adjacent point of the point to be predicted in the point cloud to be decoded, then continue to search for a distance of Collinear adjacent points, and then use the average value of the attribute reconstruction values of these collinear adjacent points as the attribute prediction value of the point to be predicted.
  • FIG. 16 is a schematic diagram of the implementation process of the attribute information prediction method 7.
  • the decoder determines whether there are adjacent points in the decoded point cloud according to the target Morton code, that is, step After 603, the method for the encoder to predict the attribute information of the point to be predicted may further include the following steps:
  • Step 605 If there are no adjacent points in the decoded point cloud, use the previous Morton code corresponding to the current Morton code to predict the attribute prediction value of the point to be predicted.
  • the decoder determines whether there are adjacent points of the point to be predicted in the decoded point cloud according to the target Morton code, if there are no adjacent points of the point to be predicted in the point cloud to be decoded, then decode Therefore, the decoder needs to use the previous Morton code corresponding to the current Morton code to predict the attribute information of the point to be predicted, so as to obtain the attribute information of the point to be predicted. The predicted value of the attribute of the point.
  • the decoder when the decoder uses the previous Morton code corresponding to the current Morton code to predict the attribute prediction value of the point to be predicted, it may first determine the previous Morton code from the point cloud to be decoded For the corresponding reconstructed point, the attribute reconstruction value of the reconstructed point can then be obtained, and the attribute reconstruction value of the reconstructed point can be determined as the attribute prediction value of the point to be predicted.
  • the reconstructed Morton code corresponding to the previous Morton code is directly
  • the attribute reconstruction value of the point is used as the attribute prediction value of the point to be predicted to complete the prediction of the attribute information of the point to be predicted.
  • the decoder can first search for the current Morton code from the point cloud sequence set of the point cloud to be decoded The previous Morton code. Among them, all Morton codes of all points in the point cloud to be decoded are stored in the point cloud sequence set in ascending order.
  • Fig. 17 is a schematic diagram of the eighth implementation process of the method for predicting attribute information.
  • step After 603, and before predicting the attribute prediction value of the point to be predicted based on the attribute reconstruction information of the neighboring points, that is, before step 604, the method for the decoder to predict the attribute information of the point to be predicted may further include the following steps:
  • Step 606 Determine the reconstructed point corresponding to the previous Morton code from the point cloud to be decoded.
  • Step 607 Determine the reconstructed point as the neighboring point of the point to be predicted.
  • the decoder after the decoder judges whether there are adjacent points of the point to be predicted in the decoded point cloud according to the target Morton code, if there are no adjacent points of the point to be predicted in the point cloud to be decoded, that is, In other words, there are no coplanar adjacent points and collinear adjacent points around the point to be predicted, so the decoder can first determine the reconstructed point corresponding to the previous Morton code from the point cloud to be decoded.
  • the decoder can determine the neighboring point of the point to be predicted by the reconstructed point. That is to say, in this application, based on the target Morton code, if there is no adjacent point of the point to be predicted in the point cloud to be decoded, then the reconstructed Morton code corresponding to the previous Morton code is directly The points are regarded as adjacent points of the points to be predicted, and then the method of step 604 is continued to complete the prediction of the attribute information of the points to be predicted.
  • step 603 that is, after the decoder determines whether there are adjacent points in the point cloud to be decoded according to the target Morton code, if there are points to be predicted in the point cloud to be decoded
  • the decoder can directly predict the attribute prediction value of the point to be predicted based on the attribute reconstruction information of the adjacent point; if the adjacent point of the point to be predicted does not exist in the point cloud to be decoded, the decoder can start from the point to be predicted.
  • the adjacent points of the points can continue to predict the attribute prediction value of the point to be predicted based on the attribute reconstruction information of the adjacent points.
  • the decoder can first compare the current point cloud sequence set to the current point cloud.
  • the reconstructed point corresponding to the previous Morton code of the frame is regarded as the neighboring point of the point to be predicted, and then the attribute prediction value of the point to be predicted is predicted according to the attribute reconstruction information of the neighboring point.
  • the information of the point to be predicted can be used.
  • the current Morton code determines the target Morton code corresponding to the adjacent position around the point to be predicted. If there is an adjacent point to the point to be predicted in the adjacent position in the point cloud, the codec can directly use the phase.
  • the attribute reconstruction value prediction of the neighboring points obtains the attribute prediction value of the point to be predicted. It is precisely because the correlation between the point to be predicted and the neighboring point is stronger, so the prediction of the attribute information of the point to be predicted can be achieved through the neighboring points. Effectively improve the accuracy of forecasts.
  • the decoder can also apply the above-mentioned method from step 601 to step 607 to the intra-layer prediction of the point cloud to be decoded.
  • the method for predicting attribute information proposed in the present application can make full use of the spatial correlation of the point cloud, so that the prediction residual is smaller, and it is more suitable for subsequent quantization and entropy decoding. Under the premise of PSNR performance, higher gain is achieved.
  • the embodiment of the application provides a method for predicting attribute information.
  • the decoder determines the current Morton code of the point to be predicted in the point cloud to be decoded; based on the current Morton code, the corresponding point to be predicted is determined according to the preset neighbor information table.
  • the target Morton code wherein the preset neighbor information table is used to determine the coordinate difference between the adjacent position of the point to be predicted and the preset reference point; according to the target Morton code, it is judged whether there is a point cloud to be decoded.
  • the adjacent points of the predicted point; if there are adjacent points in the point cloud to be decoded, the attribute prediction value of the point to be predicted is predicted according to the attribute reconstruction information of the adjacent points.
  • the codec predicts the attribute information of the point to be predicted, based on the preset neighbor information table, the current Morton code of the point to be predicted can be used to determine the surrounding area of the point to be predicted.
  • the target Morton code corresponding to the adjacent position of the point cloud.
  • the codec can directly use the attribute reconstruction value of the adjacent point to predict and obtain the to-be-predicted
  • the attribute prediction value of a point is precisely because the correlation between the point to be predicted and the adjacent point is stronger, so the prediction of the attribute information of the point to be predicted through the adjacent point can effectively improve the accuracy of the prediction and greatly reduce The prediction residual is reduced, thereby improving the coding efficiency.
  • FIG. 18 is a schematic diagram of the composition structure of the encoder.
  • the encoder 100 proposed in the embodiment of the present application may include a first determination. Part 101, the first judgment part 102, and the first prediction part 103.
  • the first determining part 101 is configured to determine the current Morton code of the point to be predicted in the point cloud to be coded; and based on the current Morton code, determine the corresponding to the point to be predicted according to a preset neighbor information table.
  • Target Morton code wherein the preset neighbor information table is used to determine the coordinate difference between the neighboring position of the point to be predicted and the preset reference point;
  • the first judging part 102 is configured to judge whether there are adjacent points of the point to be predicted in the point cloud to be coded according to the target Morton code;
  • the first prediction part 103 is configured to predict the attribute prediction value of the point to be predicted according to the attribute reconstruction information of the adjacent point if the adjacent point exists in the point cloud to be coded.
  • FIG. 19 is a schematic diagram of the composition structure of the encoder.
  • the encoder 100 proposed in the embodiment of the present application may further include a first processor 104 and a first memory 105 storing executable instructions of the first processor 104 , A first communication interface 106, and a first bus 107 for connecting the first processor 104, the first memory 105, and the first communication interface 106.
  • the above-mentioned first processor 104 is configured to determine the current Morton code of the point to be predicted in the point cloud to be coded; based on the current Morton code, according to preset neighbor information Table to determine the target Morton code corresponding to the point to be predicted; wherein the preset neighbor information table is used to determine the coordinate difference between the neighboring position of the point to be predicted and the preset reference point;
  • the target Morton code it is judged whether there are adjacent points of the point to be predicted in the point cloud to be coded; if the adjacent points exist in the point cloud to be coded, then according to the The attribute reconstruction information predicts the attribute predicted value of the point to be predicted.
  • the functional modules in this embodiment may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit.
  • the above-mentioned integrated unit can be realized in the form of hardware or software function module.
  • the integrated unit is implemented in the form of a software function module and is not sold or used as an independent product, it can be stored in a computer readable storage medium.
  • the technical solution of this embodiment is essentially or correct
  • the part that the prior art contributes or all or part of the technical solution can be embodied in the form of a software product.
  • the computer software product is stored in a storage medium and includes several instructions to enable a computer device (which can be a personal computer).
  • the aforementioned storage media include: U disk, mobile hard disk, read only memory (Read Only Memory, ROM), random access memory (Random Access Memory, RAM), magnetic disk or optical disk and other media that can store program codes.
  • the embodiment of the application provides an encoder that determines the current Morton code of the point to be predicted in the point cloud to be encoded; based on the current Morton code, the target corresponding to the point to be predicted is determined according to a preset neighbor information table Morton code; among them, the preset neighbor information table is used to determine the coordinate difference between the adjacent position of the point to be predicted and the preset reference point; judge whether there is a point to be predicted in the point cloud to be coded according to the target Morton code If there are adjacent points in the point cloud to be coded, the attribute prediction value of the point to be predicted is predicted based on the attribute reconstruction information of the adjacent points.
  • the codec predicts the attribute information of the point to be predicted, based on the preset neighbor information table, the current Morton code of the point to be predicted can be used to determine the surrounding area of the point to be predicted.
  • the target Morton code corresponding to the adjacent position of the point cloud.
  • the codec can directly use the attribute reconstruction value of the adjacent point to predict and obtain the to-be-predicted
  • the attribute prediction value of a point is precisely because the correlation between the point to be predicted and the adjacent point is stronger, so the prediction of the attribute information of the point to be predicted through the adjacent point can effectively improve the accuracy of the prediction and greatly reduce The prediction residual is reduced, thereby improving the coding efficiency.
  • FIG. 20 is a schematic diagram 1 of the composition structure of the decoder.
  • the decoder 200 proposed in this embodiment of the present application may include a second determining part 201.
  • the second determining part 201 is configured to determine the current Morton code of the point to be predicted in the point cloud to be decoded; and based on the current Morton code, determine the corresponding to the point to be predicted according to a preset neighbor information table.
  • Target Morton code wherein the preset neighbor information table is used to determine the coordinate difference between the neighboring position of the point to be predicted and the preset reference point;
  • the second judging part 202 is configured to judge whether there are adjacent points of the point to be predicted in the point cloud to be decoded according to the target Morton code;
  • the second prediction part 203 is configured to predict the attribute prediction value of the point to be predicted based on the attribute reconstruction information of the adjacent point if the adjacent point exists in the point cloud to be decoded.
  • FIG. 21 is a second schematic diagram of the structure of the decoder.
  • the decoder 200 proposed in this embodiment of the present application may further include a second processor 204 and a second memory 205 storing executable instructions of the second processor 204 , A second communication interface 206, and a second bus 207 for connecting the second processor 204, the first memory 205, and the second communication interface 206.
  • the above-mentioned second processor 204 is configured to determine the current Morton code of the point to be predicted in the point cloud to be decoded; based on the current Morton code, according to preset neighbor information
  • the table determines the target Morton code corresponding to the point to be predicted; wherein the preset neighboring information table is used to determine the coordinate difference between the neighboring position of the point to be predicted and the preset reference point;
  • the target Morton code judges whether there are adjacent points of the point to be predicted in the point cloud to be decoded; if the adjacent points exist in the point cloud to be decoded, according to the attributes of the adjacent points
  • the reconstruction information predicts the predicted value of the attribute of the point to be predicted.
  • the functional modules in this embodiment may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit.
  • the above-mentioned integrated unit can be realized in the form of hardware or software function module.
  • the integrated unit is implemented in the form of a software function module and is not sold or used as an independent product, it can be stored in a computer readable storage medium.
  • the technical solution of this embodiment is essentially or correct
  • the part that the prior art contributes or all or part of the technical solution can be embodied in the form of a software product.
  • the computer software product is stored in a storage medium and includes several instructions to enable a computer device (which can be a personal computer).
  • a computer, a server, or a network device, etc.) or a processor executes all or part of the steps of the method in this embodiment.
  • the aforementioned storage media include: U disk, mobile hard disk, ROM, RAM, magnetic disk or optical disk and other media that can store program codes.
  • the embodiment of the application provides a decoder that determines the current Morton code of the point to be predicted in the point cloud to be decoded; based on the current Morton code, the target corresponding to the point to be predicted is determined according to a preset neighbor information table Morton code; among them, the preset neighbor information table is used to determine the coordinate difference between the adjacent position of the point to be predicted and the preset reference point; judge whether there is a point to be predicted in the point cloud to be decoded according to the target Morton code If there are adjacent points in the point cloud to be decoded, the attribute prediction value of the point to be predicted is predicted based on the attribute reconstruction information of the adjacent points.
  • the codec predicts the attribute information of the point to be predicted, based on the preset neighbor information table, the current Morton code of the point to be predicted can be used to determine the surrounding area of the point to be predicted.
  • the target Morton code corresponding to the adjacent position of the point cloud.
  • the codec can directly use the attribute reconstruction value of the adjacent point to predict and obtain the to-be-predicted
  • the attribute prediction value of a point is precisely because the correlation between the point to be predicted and the adjacent point is stronger, so the prediction of the attribute information of the point to be predicted through the adjacent point can effectively improve the accuracy of the prediction and greatly reduce The prediction residual is reduced, thereby improving the coding efficiency.
  • the embodiments of the present application provide a computer-readable storage medium and a computer-readable storage medium, on which a program is stored, and when the program is executed by a processor, the method as described in the above-mentioned embodiment is implemented.
  • the program instructions corresponding to a method for predicting attribute information in this embodiment can be stored on storage media such as optical disks, hard disks, and USB flash drives.
  • storage media such as optical disks, hard disks, and USB flash drives.
  • the target Morton code corresponding to the point to be predicted is determined according to a preset neighbor information table; wherein, the preset neighbor information table is used to determine the neighboring position of the point to be predicted Determine the coordinate difference with the preset reference point;
  • the method further includes the following steps:
  • the target Morton code corresponding to the point to be predicted is determined according to a preset neighbor information table; wherein, the preset neighbor information table is used to determine the neighboring position of the point to be predicted Determine the coordinate difference with the preset reference point;
  • this application can be provided as methods, systems, or computer program products. Therefore, this application may adopt the form of hardware embodiments, software embodiments, or embodiments combining software and hardware. Moreover, this application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, optical storage, etc.) containing computer-usable program codes.
  • These computer program instructions can also be stored in a computer-readable memory that can guide a computer or other programmable data processing equipment to work in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture including the instruction device.
  • the device realizes the functions specified in one or more processes in the schematic diagram and/or one block or more in the block diagram.
  • These computer program instructions can also be loaded on a computer or other programmable data processing equipment, so that a series of operation steps are executed on the computer or other programmable equipment to produce computer-implemented processing, so as to execute on the computer or other programmable equipment.
  • the instructions provide steps for implementing functions specified in one or more processes in the schematic diagram and/or one block or more in the block diagram.
  • the embodiment of the application provides a method for predicting attribute information, an encoder, a decoder, and a storage medium.
  • the encoder determines the current Morton code of the point to be predicted in the point cloud to be encoded; based on the current Morton code, according to the preset
  • the adjacent information table determines the target Morton code corresponding to the point to be predicted; the preset adjacent information table is used to determine the coordinate difference between the adjacent position of the point to be predicted and the preset reference point; according to the target Morton code It is judged whether there are adjacent points of the point to be predicted in the point cloud to be coded; if there are adjacent points in the point cloud to be coded, the attribute prediction value of the point to be predicted is predicted according to the attribute reconstruction information of the adjacent points.
  • the decoder determines the current Morton code of the point to be predicted in the point cloud to be decoded; based on the current Morton code, determines the target Morton code corresponding to the point to be predicted according to the preset neighbor information table; judges the target Morton code to be decoded according to the target Morton code Whether there are adjacent points of the point to be predicted in the point cloud; if there are adjacent points in the point cloud to be decoded, the attribute prediction value of the point to be predicted is predicted according to the attribute reconstruction information of the adjacent points.
  • the codec predicts the attribute information of the point to be predicted, based on the preset neighbor information table, the current Morton code of the point to be predicted can be used to determine the surrounding area of the point to be predicted.
  • the target Morton code corresponding to the adjacent position of the point cloud.
  • the codec can directly use the attribute reconstruction value of the adjacent point to predict and obtain the to-be-predicted
  • the attribute prediction value of a point is precisely because the correlation between the point to be predicted and the adjacent point is stronger, so the prediction of the attribute information of the point to be predicted through the adjacent point can effectively improve the accuracy of the prediction and greatly reduce The prediction residual is reduced, thereby improving the coding efficiency.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

本申请实施例提供了一种属性信息的预测方法、编码器、解码器及存储介质,编码器确定待编码点云中的待预测点的当前莫顿码;基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码;根据目标莫顿码判断待编码点云中是否存在待预测点的相邻点;若待编码点云中存在相邻点,则根据相邻点的属性重建信息预测待预测点的属性预测值。解码器确定待解码点云中的待预测点的当前莫顿码;基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码;根据目标莫顿码判断待解码点云中是否存在待预测点的相邻点;若待解码点云中存在相邻点,则根据相邻点的属性重建信息预测待预测点的属性预测值。

Description

属性信息的预测方法、编码器、解码器、及存储介质 技术领域
本申请实施例涉及通信领域中的编解码技术,尤其涉及一种属性信息的预测方法、编码器、解码器及存储介质。
背景技术
在点云探索模型(Point cloud exploration model,PCEM)编码器框架中,可以将输入的点云分为几何信息和每个点对应的属性信息,其中,点云的几何信息和每个点云所对应的属性信息是分开进行编码的。其中,对点云的属性信息进行编码时,可以利用点的坐标信息得到对应于点云中每一点的莫顿码,然后基于莫顿码,通过后向差分方法对属性信息进行预测。
由于莫顿码存在周期性的跳变点,因此,仅仅利用莫顿码相邻的点来对当前点进行预测,在空间上是不准确的,从而影响了预测的准确性,导致预测残差大的缺陷,进而降低了编码效率。
发明内容
本申请实施例提供了一种属性信息的预测方法、编码器、解码器及存储介质,能够有效地提高预测的准确性,大大减小了预测残差,从而提高了编码效率。
本申请实施例的技术方案可以如下实现:
第一方面,本申请实施例提供了一种属性信息的预测方法,应用于编码器中,所述方法包括:
确定待编码点云中的待预测点的当前莫顿码;
基于所述当前莫顿码,根据预设相邻信息表确定所述待预测点对应的目标莫顿码;其中,所述预设相邻信息表用于对所述待预测点的相邻位置与预设基准点之间的坐标差进行确定;
根据所述目标莫顿码判断所述待编码点云中是否存在所述待预测点的相邻点;
若所述待编码点云中存在所述相邻点,则根据所述相邻点的属性重建信息预测所述待预测点的属性预测值。
第二方面,本申请实施例还提供了一种属性信息的预测方法,应用于解码器中,所述方法包括:
确定待解码点云中的待预测点的当前莫顿码;
基于所述当前莫顿码,根据预设相邻信息表确定所述待预测点对应的目标莫顿码;其中,所述预设相邻信息表用于对所述待预测点的相邻位置与预设基准点之间的坐标差进行确定;
根据所述目标莫顿码判断所述待解码点云中是否存在所述待预测点的相邻点;
若所述待解码点云中存在所述相邻点,则根据所述相邻点的属性重建信息预测所述待预测点的属性预测值。
第三方面,本申请实施例还提供了一种编码器,所述编码器包括:第一确定部分,第一判断部分,第一预测部分,
所述第一确定部分,配置为确定待编码点云中的待预测点的当前莫顿码;以及基于所述当前莫顿码,根据预设相邻信息表确定所述待预测点对应的目标莫顿码;其中,所述预设相邻信息表用于对所述待预测点的相邻位置与预设基准点之间的坐标差进行确定;
所述第一判断部分,配置为根据所述目标莫顿码判断所述待编码点云中是否存在所述待预测点的相邻点;
所述第一预测部分,配置为若所述待编码点云中存在所述相邻点,则根据所述相邻点的属性重建信息预测所述待预测点的属性预测值。
第四方面,本申请实施例还提供了一种解码器,所述解码器包括:第二确定部分,第二判断部分,第二预测部分,
所述第二确定部分,配置为确定待解码点云中的待预测点的当前莫顿码;以及基于所述当前莫顿码,根据预设相邻信息表确定所述待预测点对应的目标莫顿码;其中,所述预设相邻信息表用于对所述待预测点的相邻位置与预设基准点之间的坐标差进行确定;
所述第二判断部分,配置为根据所述目标莫顿码判断所述待解码点云中是否存在所述待预测点的相邻点;
所述第二预测部分,配置为若所述待解码点云中存在所述相邻点,则根据所述相邻点的属性重建信息预测所述待预测点的属性预测值。
第五方面,本申请实施例还提供了一种编码器,所述编码器包括第一处理器、存储有所述第一处理器可执行指令的第一存储器,当所述指令被所述第一处理器执行时,实现如上所述的属性信息的预测方法。
第六方面,本申请实施例还提供了一种解码器,所述解码器包括第二处理器、存储有所述第二处理器可执行指令的第二存储器,当所述指令被所述第二处理器执行时,实现如上所述的属性信息的预测方法。
第七方面,本申请实施例还提供了一种计算机可读存储介质,其上存储有程序,应用于编码器中,所述程序被处理器执行时,实现如上所述的属性信息的预测方法。
第八方面,本申请实施例还提供了一种计算机可读存储介质,其上存储有程序,应用于解码器中,所述程序被处理器执行时,实现如上所述的属性信息的预测方法。
本申请实施例提供了一种属性信息的预测方法、编码器、解码器及存储介质,编码器确定待编码点云中的待预测点的当前莫顿码;基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码;其中,预设相邻信息表用于对待预测点的相邻位置与预设基准点之间的坐标差进行确定;根据目标莫顿码判断待编码点云中是否存在待预测点的相邻点;若待编码点云中存在相邻点,则根据相邻点的属性重建信息预测待预测点的属性预测值。解码器确定待解码点云中的待预测点的当前莫顿码;基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码;根据目标莫顿码判断待解码点云中是否存在待预测点的相邻点;若待解码点云中存在相邻点,则根据相邻点的属性重建信息预测待预测点的属性预测值。由此可见,在本申请的实施例中,编解码器在对待预测点进行属性信息的预测时,基于预设相邻信息表,可以利用待预测点的当前莫顿码确定出待预测点周围的相邻位置对应的目标莫顿码,如果点云中在该相邻位置上存在待预测点的相邻点,那么编解码器便可以直接利用该相邻点的属性重建值预测获得待预测点的属性预测值,正是因为待预测点与相邻点之间的相关性更强,因此通过相邻点实现待预测点的属性信息的预测,能够有效地提高预测的准确性,大大减小了预测残差,从而提高了编码效率。
附图说明
图1为PCEM的编码流程示意图;
图2为PCEM的解码流程示意图;
图3展示了8×8的图像每个像素的空间编码;
图4展示了4×4的图像每个像素的空间编码;
图5为预测方法的应用示意图一;
图6为预测方法的应用示意图二;
图7为属性信息的预测方法的实现流程示意图一;
图8为相邻位置的示意图;
图9为属性信息的预测方法的实现流程示意图二;
图10为属性信息的预测方法的实现流程示意图三;
图11为属性信息的预测方法的实现流程示意图四;
图12为属性信息的预测方法的实现流程示意图五;
图13为属性信息的预测框架示意图;
图14为属性信息的预测算法流程图;
图15为属性信息的预测方法的实现流程示意图六;
图16为属性信息的预测方法的实现流程示意图七;
图17为属性信息的预测方法的实现流程示意图八;
图18为编码器的组成结构示意图一;
图19为编码器的组成结构示意图二;
图20为解码器的组成结构示意图一;
图21为解码器的组成结构示意图二。
具体实施方式
为了能够更加详尽地了解本申请实施例的特点与技术内容,下面结合附图对本申请实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本申请实施例。
在信源编码标准(Audio Video coding Standard,AVS)的点云探索模型(Point cloud exploration model,PCEM)编码器框架中,可以将输入的点云分为几何信息和每个点对应的属性信息,其中,点云的几何信息和每个点云所对应的属性信息是分开进行编码的。
图1为PCEM的编码流程示意图,如图1所示,在几何编码过程中,对几何信息进行坐标转换,使点云全都包含在一个bounding box(包围盒)中,然后再进行量化,这一步量化主要起到缩放的作用,由于量化取整,使得一部分点云的几何信息相同,于是在基于参数来决定是否移除重复点,量化和移除重复点这一过程又被称为体素化过程。接着对bounding box进行八叉树划分。根据八叉树划分层级深度的不同,几何信息的编码可以分为基于八叉树和trisoup的两种框架。
几何编码完成后,对几何信息进行重建用以指导属性编码。目前,属性编码主要针对颜色信息进行。将颜色信息(即属性信息)从RGB(Red-Green-Blue,红绿蓝)颜色空间转换到YUV(Luminance-Chrominance,亮度色度)颜色空间。然后,利用重建的几何信息对点云重新着色,使得未编码的属性信息与重建的几何信息对应起来。
接下来进行属性预测,首先基于莫顿码对点云进行重排序,生成可用于点云属性预测的点云顺序,然后使用差分方法进行属性信息的预测,获得属性预测残差,从而可以继续对属性预测残差进行量化编码,输入熵编码引擎得到码流。
图2为PCEM的解码流程示意图,如图2所示,针对所获取的二进制码流,首先对二进制码流中的几何比特流和属性比特流分别进行独立解码。在对几何比特流的解码时,通过熵解码-八叉树重建-逆坐标量化-逆坐标平移,得到点云的几何信息;在对属性比特流的解码时,通过熵解码-逆量化-属性重建-逆空间变换,得到点云的属性信息,基于几何信息和属性信息还原待编码的点云数据的三维图像模型。
可以理解的是,在对点云的属性信息进行编码时,可以利用点的坐标信息得到对应于点云中每一点的莫顿码, 然后基于莫顿码,通过后向差分方法对属性信息进行预测。莫顿编码也叫z-order code,因为其编码顺序按照空间z序。具体的计算莫顿码的方法描述如下所示,对于每一个分量用d比特二进制数表示的三维坐标,其三个坐标分量的表示通过以下实现:
Figure PCTCN2019122499-appb-000001
其中,x l,y l,z l∈{0,1}分别是x,y,z的最高位(l=1)到最低位(l=d)对应的二进制数值。莫顿码M是对x,y,z从最高位开始,依次交叉排列x l,y l,z l到最低位,M的计算公式如下所示:
Figure PCTCN2019122499-appb-000002
其中,m l′∈{0,1}分别是M的最高位(l′=1)到最低位(l′=3d)的值。在得到点云中每个点的莫顿码M后,将点云中的点按照莫顿码由小到大的顺序进行排列w,并将每个点的权值w设为1。表示为计算机语言,类似于z|(y<<1)|(x<<2)的组合。
结合图3进行说明,以高低位排列顺序这里是z、y、x(x|(y<<1)|(z<<2))为例进行说明。
图3展示了8×8的图像每个像素的空间编码,如图3所示,从000000到111111,用一维二进制数,编码了x,y值在0-7的位置坐标。交错二进制坐标值,获得二进制z值图。沿着数值方向连接z型,产生递归的z形曲线。图中每个位置上就按连接顺序放上了z值。实际上,上图就是按z方向迭代产生的,从00-11(整个图一个z),再从0000-1111(之前的z的每个点放一个z),再从000000-111111(之前的z的每个点放一个z),每次增加两位,递归升高。
图4展示了4×4的图像每个像素的空间编码,如图4所示,对于二维坐标的莫顿码,将坐标x、y先进行二值化,再从x、y的最高位开始,令他们由高到低每一位上的值交叉排列。最后,将莫顿码的值由小到大连接,可以看到Z字形的连接顺序,且每四个点可看做一个小的块,除了最后两位不同,前四位都相同。这样,前四位相同的莫顿码,可以确定一个父块,此时将这四个点莫顿码右移2位可以得到它们父块的莫顿码。这样每四个相同层级的块不断结合,即莫顿码值右移两位,可以得到它们的父块。同理,在三维坐标下,每八个小块结合,即莫顿码值右移三位,可以得到它们的父块。
目前,在基于后向差分方法对属性信息进行预测的过程中,可以利用莫顿码相邻的点来对当前点进行预测,具体过程如下:
Step1、遍历莫顿重排序后的点云。对于第一个点,没有参考点进行预测,其预测值为0,设当前点属性值为A0,则预测残差为R0=A0;
Step2、对于剩余点,均将当前点在莫顿顺序下的前一点作为参考点,将参考点的属性重建值A'(i-1)作为预测值,设当前点属性值为Ai,则预测残差为Ri=Ai-A'(i-1):
Step3、重复Step2直至遍历完整帧点云。
然后便可以继续对属性预测残差进行量化编码,输入熵编码引擎得到码流。
然而,莫顿码存在周期性的跳变点,也就是说,莫顿码相邻的两个点,对应的空间位置却并不一定相邻,因此,仅仅利用莫顿码相邻的点来对当前点进行预测,在空间上是不准确的,即在PCEM中仅仅依靠前一个莫顿码来对当前点进行属性信息的预测,会存在误差,影响预测的准确性。
为了克服上述缺陷,本申请提出了利用待预测点的当前莫顿码快速找到与待预测点相关性更强的真正的相邻点,并用该相邻点的属性重建值来对待预测点的属性信息进行预测,从而提升编码器性能。也就是说,在本申请中,编解码器在对待预测点进行属性信息的预测时,基于预设相邻信息表,可以利用待预测点的当前莫顿码确定出待预测点周围的相邻位置对应的目标莫顿码,如果点云中在该相邻位置上存在待预测点的相邻点,那么编解码器便可以直接利用该相邻点的属性重建值预测获得待预测点的属性预测值,正是因为待预测点与相邻点之间的相关性更强,因此通过相邻点实现待预测点的属性信息的预测,能够有效地提高预测的准确性,大大减小了预测残差,从而提高了编码效率。
本申请所提出的一种属性信息的预测方法,可以影响PCEM点云编解码器框架中的属性预测过程和属性重建过程中,示例性的,图5为预测方法的应用示意图一,如图5所示,本申请的属性预测方法可以在PCEM点云编码器框架中的属性预测位置应用。图6为预测方法的应用示意图二,如图6所示,本申请的属性预测方法可以在PCEM点云解码器框架中的属性重建位置应用。进一步地,该属性信息的预测方法对编码端和解码端同时作用,该属性信息的预测方法的流程、框架与算法在编码端与解码端完全一样。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
本申请一实施例提供了一种属性信息的预测方法,该方法应用于编码器中,图7为属性信息的预测方法的实现流程示意图一,如图7所示,编码器预测待预测点的属性信息的方法可以包括以下步骤:
步骤101、确定待编码点云中的待预测点的当前莫顿码。
在本申请的实施例中,编码器可以先确定待编码点云中的待预测点的当前莫顿码。
需要说明的是,在本申请的实施例中,在对待编码点云进行编码处理时,待编码点云的几何信息和待编码点云所对应的属性信息是分开进行编码的。其中,在几何信息编码完成后,对几何信息进行重建,而属性信息的编码将依赖于重建的几何信息。
具体地,属性信息的编码主要是针对颜色信息的编码。首先,将颜色信息从RGB颜色空间转换到YUV颜色空间。然后,利用重建的几何信息对点云重新着色,使得未编码的属性信息与重建的几何信息对应起来。接下来进行属性信息的预测,首先基于莫顿码对待编码点云进行重排序,生成可以用于预测待编码点云的属性信息的点云顺序。
进一步地,在本申请的实施例中,在对待编码点云的几何信息进行编码之后,编码器可以利用待编码点云中每一个点的集合信息,确定出每一个点的莫顿码。在得到每个点的莫顿码之后,编码器可以将待编码点云中的所有点,按照由小至大的顺序,对全部点的全部莫顿码进行排序,生成待编码点云对应的点云序列集合。其中,点云序列集合中存储有待编码点云中的全部点的全部莫顿码。
需要说明的是,在本申请的实施例中,编码器对待编码点云的属性信息进行编码时,可以按照莫顿码由小到大的顺序依次对待编码点云的全部点进行属性信息的预测。
可以理解的是,在本申请的实施例中,待预测点可以为待编码点云中的任意一个点,当前莫顿码为待预测点的莫顿码,在对待预测点进行属性信息的预测时,小于当前莫顿码的其他莫顿码所对应的其他点已经完成了属性信息的预测,生成对应的属性重建信息。
进一步地,在本申请的实施例中,编码器在对待预测点进行属性信息的预测时,需要先对待预测点的莫顿码进行确定,获得当前莫顿码。
步骤102、基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码;其中,预设相邻信息表用于对待预测点的相邻位置与预设基准点之间的坐标差进行确定。
在本申请的实施例中,编码器在确定待预测点的当前莫顿码之后,可以基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码。其中,目标莫顿码可以表征待预测点周围的相邻位置对应的莫顿码。
需要说明的是,在本申请的实施例中,预设相邻信息表可以表征待预测点的周围的相邻位置与预设基准点之间的坐标差。其中,待预测点的相邻位置可以包括与待预测点共面相邻的共面相邻点,还可以包括与待预测点共线相邻的共线相邻点。
可以理解的是,在本申请的实施例中,在对待预测点进行属性信息的预测时,如果将待预测点作为待编码点云的空间中心,那么预设基准点可以为以待预测点为中心的空间的坐标原点。具体地,基于同一个预设基准点,对预设基准点与待预测点之间的距离,和预设基准点与待预测点的相邻位置之间的距离进行差值运算,便可以获得相邻位置与待预测点之间的坐标差。其中,预设基准点可以为待编码点云中的莫顿码最小的点。
图8为相邻位置的示意图,如图8所示,预设基准点为O,待预测点为A,与A共面相邻的B、C以及D为共面相邻点,与A共线相邻的E、F以及G为共线相邻点。
可以理解的是,在本申请的实施例中,编码器是进行八叉树的分割,因此,对于待预测点,按照单位距离,其周围存在有26个相邻位置,然而,由于编码器对待编码点云的属性信息进行编码时,是按照莫顿码由小到大的顺序依次进行属性信息的预测,因此,编码器只需考虑莫顿码小于当前莫顿码的点,示例性的,只需考虑上述图2中的B、C、D、E、F以及G。
进一步地,在本申请的实施例中,编码器在基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码之前,需要先建立待预测点对应的预设相邻信息表。也就是说,预设相邻信息表是基于待预测点建立的。
需要说明的是,在本申请的实施例中,编码器在建立待预测点对应的预设相邻信息表时,可以对待预测点的当前莫顿码(cur_pos)进行操作,具体地,编码器可以先定位至预设基准点的莫顿码(base_pos),然后基于预设基准点的莫顿码,计算预设基准点和待预测点的相邻位置之间的坐标差值,接下来继续对这些坐标差值进行莫顿编码,从而可以建立待预测点对应的预设相邻信息表。
也就是说,在本申请的实施例中,由于待预测点的相邻位置可以包括与待预测点共面相邻的共面相邻点,和与待预测点共线相邻的共线相邻点,因此,编码器在建立待预测点对应的预设相邻信息表时,可以分别计算预设基准点与共面相邻点之间的第一坐标差,计算预设基准点与共线相邻点之间的第二坐标差,然后可以对第一坐标差进行莫顿编码,获得共面相邻点对应的共面莫顿码,同时,可以对第二坐标差进行莫顿编码,获得共线相邻点对应的共线莫顿码,最后,编码器可以基于共面莫顿码和共线莫顿码,建立待预测点对应的预设相邻信息表。
进一步地,在本申请的实施例中,编码器在确定待编码点云中的待预测点的当前莫顿码之后,可以基于当前莫顿码对应的预设相邻信息表中确定出待预测点对应的目标莫顿码,其中,目标莫顿码可以表征待预测点周围的相邻位置对应的莫顿码。
具体地,在本申请的实施例中,编码器在基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码时,由于预设相邻信息表中存储有对预设基准点和相邻位置之间的坐标差值进行莫顿编码之后的莫顿码,因此,编码器可以从预设相邻信息表中提取与相邻位置对应的坐标差值的莫顿码,便可以进一步利用该坐标差值的莫顿码确定出目标莫顿码。
可以理解的是,在本申请的实施例中,由于预设相邻信息表中存储有待预测点对应的共面莫顿码和共线莫顿码,因此,编码器在进行目标莫顿码的确定时,可以从预设相邻信息表中提取共面莫顿码和/或共线莫顿码,然后对当前莫顿码与共面莫顿码和/或共线莫顿码进行求和运算,从而可以获得目标莫顿码。
需要说明的是,在本申请的实施例中,正式由于待预测点的相邻位置既包括共面相邻点,也包括共线相邻点,因此,编码器在在进行目标莫顿码的确定时,还可以先进行相邻类型的确定,其中,相邻类型可以包括共面相邻和共线相邻,然后可以基于确定的相邻类型,进一步从预设相邻信息表中提取共面莫顿码或共线莫顿码,并基于共面莫顿码或共线莫顿码确定目标莫顿码。
示例性的,在本申请中,对于待预测点,如果共面相邻点与其之间的距离为1,那么共线相邻点与其之间的距离为
Figure PCTCN2019122499-appb-000003
基于距离越近相关性越强的原则,可以优先选取共面相邻的相邻类型,然后从预设相邻信息表中提取共面莫顿码,以利用共面莫顿码确定出目标莫顿码。
需要说明的是,在本申请的实施例中,目标莫顿码可以表征待预测点周围的相邻位置对应的莫顿码,因此,编码器可以利用目标莫顿码对待预测点周围的相邻点进行查找和确定。
步骤103、根据目标莫顿码判断待编码点云中是否存在待预测点的相邻点。
在本申请的实施例中,编码器在基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码之后,便可以根据目标莫顿码来判断待编码点云中是否存在待预测点的相邻点。也就是说,编码器可以利用待预测点周围的相邻位置对应的莫顿码,进一步对待编码点云中是否存在与待预测点相邻的点进行判定。
需要说明的是,在本申请的实施例中,编码器在确定出目标莫顿码之后,并不能直接根据目标莫顿码确定待预 测点的相邻点,这是由于点云在空间中并不是均匀分布,待预测点的相邻位置上并不一定真的存在相邻点,也就是说,按照待预测点的相邻位置确定的目标莫顿码并不一定真的在待编码点云中对应有点,因此,编码器在确定出目标莫顿码之后,还需要根据目标莫顿码判断待编码点云中是否存在待预测点的相邻点。
可以理解的是,在本申请的实施例中,编码器在得到每个点的莫顿码之后,会按照由小至大的顺序,对全部点的全部莫顿码进行排序,生成待编码点云对应的点云序列集合,因此,编码器在确定出目标莫顿码之后,可以利用待编码点云对应的点云序列集合,结合目标莫顿码,进一步对是否存在待预测点的相邻点进行判断。
进一步地,在本申请的实施例中,编码器在根据点云序列集合和目标莫顿码判断编码点云中是否存在待预测点的相邻点时,可以先获取待编码点云的点云序列集合,然后利用目标莫顿码在点云序列集合中进行查询处理,可以获得查询结果,如果查询结果为点云序列集合中存在目标莫顿码,那么编码器便可以判定待编码点云中存在待预测点对应的相邻点。也就是说,在本申请中,编码器在确定目标莫顿码之后,直接在点云序列集合中查找是否存在目标莫顿码,如果存在,便可以认为待预测点在空间中存在相邻点;相应地,如果不存在,便可以认为待预测点在空间中不存在相邻点。
需要说明的是,在本申请的实施例中,编码器在基于目标莫顿码在点云序列集合中进行查询处理时,既可以根据目标莫顿码直接遍历查询点云序列集合中的每一个莫顿码,以获得查询结果;还可以根据目标莫顿码,按照预设查询算法进行点云序列集合的查询处理,从而获得查询结果。
也就是说,在本申请的实施例中,编码器在基于目标莫顿码在点云序列集合中进行查询处理时,既可以对点云序列集合使用的遍历的方法,也可以为其他对点云序列集合进行快速查找的算法。
步骤104、若待编码点云中存在相邻点,则根据相邻点的属性重建信息预测待预测点的属性预测值。
在本申请的实施例中,编码器在根据目标莫顿码判断编码点云中是否存在待预测点的相邻点之后,如果待编码点云中存在待预测点的相邻点,那么编码器可以直接根据待预测点的相邻点的属性重建信息,对待预测点的属性信息进行预测,获得属性预测值。
需要说明的是,在本申请的实施例中,如果待预测点存在相邻点,那么编码器在根据相邻点的属性重建信息预测待预测点的属性预测值时,可以先获取相邻点的属性重建值,然后对属性重建值进行均值计算,获得属性重建值对应的平均值,便可以将该平均值确定为属性预测值。
可以理解的时,在本申请的实施例中,由于待预测点的相邻点可以为与待预测点共面相邻的共面相邻点,还可以为与待预测点共线相邻的共线相邻点,因此,如果编码器确定出待预测点的相邻点为共面相邻点或者共线相邻点,那么编码器在获取相邻点的属性重建值时,可以获取共面相邻点对应的第一属性重建值,或者,获取共线相邻点对应的第二属性重建值。
相应地,在本申请中,由于待预测点存在至少一个共面相邻的共面相邻点,和至少一个共线相邻的共线相邻点,因此,编码器在对属性重建值进行均值计算时,可以计算至少一个第一重建值对应的第一平均值,或者,计算至少一个第二重建值对应的第二平均值,最后,编码器便可以将第一平均值或第二平均值确定为属性预测值,从而完成对待预测点的属性信息的预测。
进一步地,在本申请的实施例中,如果编码器确定出待预测点的相邻点为共面相邻点和共线相邻点,那么编码器在获取相邻点的属性重建值时,可以获取共面相邻点对应的第一属性重建值,同时,获取共线相邻点对应的第二属性重建值。
相应地,在本申请中,由于待预测点存在至少一个共面相邻的共面相邻点,和至少一个共线相邻的共线相邻点,因此,编码器在对属性重建值进行均值计算时,可以按照预设权重对第一属性重建值和第二属性重建值进行加权平均计算,从而可以获得加权平均值。最后,编码器便可以将加权平均值确定为属性预测值,从而完成对待预测点的属性信息的预测。
可以理解的是,在本申请的实施例中,编码器在利用预设权重对第一属性重建值和第二属性重建值进行加权平均计算时,可以分别对第一属性重建值和第二属性重建值分配不同的权重值。具体地,基于距离越近相关性越强的原则,第一属性重建值对应的权重值应该大于第二属性重建值对应的权重值。
示例性的,在本申请中,如果待预测点具有共面相邻点和共线相邻点等多个相邻点,例如,待预测点存在6个相邻点进行属性信息的预测,包括3个共面相邻点和3个共线相邻点。编码器可以将全部相邻点的属性重建值进行基于距离的加权平均运算,以实现对待预测点的属性信息的预测,获得待预测点的属性预测值。具体地,编码器可以利用公式(2)进行待预测点的属性信息的预测:
Figure PCTCN2019122499-appb-000004
其中,
Figure PCTCN2019122499-appb-000005
为当前点的属性的预测值,n为相邻点的个数,取值可以为6,a j为相邻点的属性重建值,w j是其对应的权重系数,一般由下式(3)给出:
Figure PCTCN2019122499-appb-000006
其中,d ij为相邻点和待预测点之间的距离,f(d ij)为与d ij相关的函数,也就是说,根据每个相邻点与待预测点之间的距离,随着距离的增加相关性减弱,因此对距离较小的相邻点的属性重建值赋予较大的权重。
可以理解的是,在本申请的实施例中,编码器在进行待预测点的属性信息的预测时,既可以同时利用待预测点的共面相邻点的第一属性重建值和共线相邻点的第二属性重建值确定待预测点的属性预测值,还可以选择利用待预测点的共面相邻点的第一属性重建值,或者共线相邻点的第二属性重建值确定待预测点的属性预测值。其中,基于距离越近相关性越强的原则,可以优先选择距离更近的共面相邻点进行待预测点的属性信息的预测。
示例性的,在本申请中,编码器可以先查找距离为1的共面相邻点,如果存在,那么利用这些共面相邻点的属性重建值的平均值作为待预测点的属性预测值;如果待编码点云中不存在待预测点的共面相邻点,那么继续查找距离为
Figure PCTCN2019122499-appb-000007
的共线相邻点,然后利用这些共线相邻点的属性重建值的平均值作为待预测点的属性预测值。
图9为属性信息的预测方法的实现流程示意图二,如图9所示,在本申请的实施例中,编码器在根据目标莫顿码判断编码点云中是否存在相邻点之后,即步骤103之后,编码器对待预测点的属性信息进行预测的方法还可以包括以下步骤:
步骤105、若编码点云中不存在相邻点,则利用当前莫顿码对应的前一个莫顿码预测待预测点的属性预测值。
在本申请的实施例中,编码器在根据目标莫顿码判断编码点云中是否存在待预测点的相邻点之后,如果待编码点云中不存在待预测点的相邻点,那么编码器便无法根据待预测点的相邻点对待预测点的属性信息进行预测,因此,编码器需要利用当前莫顿码对应的前一个莫顿码对待预测点的属性信息进行预测,从而获得待预测点的属性预测值。
需要说明的是,在本申请的实施例中,待预测点不存在相邻点,也就是说,待预测点的周围并不存在共面相邻点和共线相邻点,那么只能利用当前莫顿码的前一个莫顿码所对应的属性重建值来预测待预测点的属性信息。
进一步地,在本申请的实施例中,编码器在利用当前莫顿码对应的前一个莫顿码预测待预测点的属性预测值时,可以先从待编码点云中确定出前一个莫顿码对应的已重建点,然后可以获取该已重建点的属性重建值,并将该已重建点的属性重建值确定为待预测点的属性预测值。也就是说,在本申请中,基于目标莫顿码,如果待编码点云中不存在待预测点的相邻点,那么就直接将当前莫顿码的前一个莫顿码所对应的已重建点的属性重建值,作为待预测点的属性预测值,以完成待预测点的属性信息的预测。
可以理解的是,在本申请的实施例中,如果待编码点云中不存在待预测点的相邻点,那么编码器可以先从待编码点云的点云序列集合中查找当前莫顿码的前一个莫顿码。其中,点云序列集合中按照由小至大的顺序存储有待编码点云中的全部点的全部莫顿码。
图10为属性信息的预测方法的实现流程示意图三,如图10所示,在本申请的实施例中,编码器在根据目标莫顿码判断编码点云中是否存在相邻点之后,即步骤103之后,且根据相邻点的属性重建信息预测待预测点的属性预测值之前,即步骤104之前,编码器对待预测点的属性信息进行预测的方法还可以包括以下步骤:
步骤106、从待编码点云中确定前一个莫顿码对应的已重建点。
步骤107、将已重建点确定为待预测点的相邻点。
在本申请的实施例中,编码器在根据目标莫顿码判断编码点云中是否存在待预测点的相邻点之后,如果待编码点云中不存在待预测点的相邻点,也就是说,待预测点的周围并不存在共面相邻点和共线相邻点,那么编码器可以先从待编码点云中确定出前一个莫顿码对应的已重建点。
进一步地,在本申请的实施例中,编码器在从待编码点云中确定前一个莫顿码对应的已重建点之后,便可以将该已重建点确定待预测点的相邻点。也就是说,在本申请中,基于目标莫顿码,如果待编码点云中不存在待预测点的相邻点,那么就直接将当前莫顿码的前一个莫顿码所对应的已重建点作为待预测点的相邻点,然后再继续按照步骤104的方法完成待预测点的属性信息的预测。
可以理解的是,在本申请的实施例中,在步骤103之后,即编码器在根据目标莫顿码判断待编码点云中是否存在相邻点之后,如果待编码点云中存在待预测点的相邻点,那么编码器可以直接根据相邻点的属性重建信息预测待预测点的属性预测值;如果待编码点云中不存在待预测点的相邻点,那么编码器可以先从待编码点云的点云序列集合中查找当前莫顿码的前一个莫顿码,然后从待编码点云中确定前一个莫顿码对应的已重建点,并将该已重建点确定为待预测点的相邻点,从而便可以继续根据相邻点的属性重建信息预测待预测点的属性预测值。
由此可见,在本申请的实施例中,如果基于目标莫顿码,确定待编码点云中不存在待预测点的相邻点,那么编码器可以先将点云序列集合中的、当前莫顿码的前一个莫顿码所对应的已重建点作为待预测点的相邻点,然后根据该相邻点的属性重建信息预测待预测点的属性预测值。
在本申请的实施例中,进一步地,编码器在根据相邻点的属性重建信息预测待预测点的属性预测值之后,编码器便可以根据属性预测值计算待预测点的预测残差,然后可以对预测残差进行编码,生成码流。
需要说明的是,在本申请的实施例中,基于上述步骤101至步骤107的方法,编码器在对待预测点进行属性信息的预测时,基于预设相邻信息表,可以利用待预测点的当前莫顿码确定出待预测点周围的相邻位置对应的目标莫顿码,如果点云中在该相邻位置上存在待预测点的相邻点,那么编解码器便可以直接利用该相邻点的属性重建值预测获得待预测点的属性预测值,正是因为待预测点与相邻点之间的相关性更强,因此通过相邻点实现待预测点的属性信息的预测,能够有效地提高预测的准确性。相比之下,本申请根据待预测点的当前莫顿码直接求得相邻点的莫顿码,并在查询后确定相邻点确实存在时,利用相邻点的重建属性值对待预测点的属性信息进行预测,比PCEM的相关技术方案,更大程度上利用了点云的空间相关性,在峰值信噪比(Peak Signal to Noise Ratio,PSNR)性能保持甚至略好的情况下,大幅度减少了输出的二进制码流。
进一步地,在本申请的实施例中,如果对待编码点云进行了分层处理,那么编码器也可以将上述步骤101至步骤107的方法应用于待编码点云的层内预测。
在本申请的实施例中,进一步地,本申请提出的属性信息的预测方法,可以充分利用点云的空间相关性,使得预测残差更小,更适用于后续的量化及熵编码,在保持PSNR性能的前提下,实现更高的增益。表1为本申请提出的属性信息的预测方法的性能情况,由表1可知,与PCEM的相关技术方案相比,对于不同的目标,在同样的客观质量下,利用本申请提出的属性信息的预测方法,码率均减少,编码器的性能提高。
表1
Figure PCTCN2019122499-appb-000008
本申请实施例提供了一种属性信息的预测方法,编码器确定待编码点云中的待预测点的当前莫顿码;基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码;其中,预设相邻信息表用于对待预测点的相邻位置与预设基准点之间的坐标差进行确定;根据目标莫顿码判断待编码点云中是否存在待预测点的相邻点;若待编码点云中存在相邻点,则根据相邻点的属性重建信息预测待预测点的属性预测值。由此可见,在本申请的实施例中,编解码器在对待预测点进行属性信息的预测时,基于预设相邻信息表,可以利用待预测点的当前莫顿码确定出待预测点周围的相邻位置对应的目标莫顿码,如果点云中在该相邻位置上存在待预测点的相邻点,那么编解码器便可以直接利用该相邻点的属性重建值预测获得待预测点的属性预测值,正是因为待预测点与相邻点之间的相关性更强,因此通过相邻点实现待预测点的属性信息的预测,能够有效地提高预测的准确性,大大减小了预测残差,从而提高了编码效率。
基于上述实施例,在本申请的另一实施例中,图11为属性信息的预测方法的实现流程示意图四,如图11所示,由于待预测点的相邻位置可以包括与待预测点共面相邻的共面相邻点,还可以包括与待预测点共线相邻的共线相邻点,因此,编码器建立待预测点对应的预设相邻信息表的方法可以包括以下步骤:
步骤201、定位预设基准点。
步骤202、计算预设基准点与共面相邻点之间的第一坐标差,计算预设基准点与共线相邻点之间的第二坐标差;
步骤203、对第一坐标差进行莫顿编码,获得共面相邻点对应的共面莫顿码,对第二坐标差进行莫顿编码,获得共线相邻点对应的共线莫顿码;
步骤204、基于共面莫顿码和共线莫顿码,建立待预测点对应的预设相邻信息表。
在本申请的实施例中,编码器在建立预设相邻信息表时,需要先定位预设基准点,其中,预设基准点表征待编码点云中的以待预测点为中心的空间的原点坐标。其中,预设基准点可以为待编码点云中的莫顿码最小的点。
示例性的,在本申请中,待预测点的坐标为(1,1,2),以待预测点为空间的中心,编码器可以将预设基准点坐标定位为(0,0,0)。
需要说明的是,在本申请的实施例中,在定位预设基准点之后,可以基于预设基准点,先确定出待预测点周围的相邻位置的坐标,例如,确定某一个相邻位置的坐标为(1,1,1)。
进一步地,在本申请的实施例中,预设基准点和待预测点的相邻位置之间的坐标差值,具体可以包括预设基准点与共面相邻点之间的第一坐标差,也可以包括预设基准点与共线相邻点之间的第二坐标差。
需要说明的是,在本申请的实施例中,编码器在利用预设基准点,计算预设基准点与相邻位置之间的坐标差值之后,便可以对该坐标差值进行莫顿编码,获得对应的莫顿码。
可以理解的是,在本申请的实施例中,编码器在计算预设基准点与共面相邻点之间的第一坐标差之后,可以对第一坐标差进行莫顿编码,从而获得对应的莫顿码,即共面莫顿码;相应地,编码器在计算预设基准点与共线相邻点之间的第二坐标差之后,可以对第二坐标差进行莫顿编码,从而获得对应的莫顿码,即共线莫顿码。
进一步地,在本申请的实施例中,编码器在完成对预设基准点与相邻位置之间的坐标差值的莫顿编码之后,便可以基于获得的莫顿码建立预设相邻信息表。具体地,编码器可以利用相邻位置与莫顿码的对应关系建立预设相邻信息表。也就是说,预设相邻信息表可以用于对相邻位置的莫顿码进行确定。
可以理解的是,在本申请的实施例中,编码器可以基于共面莫顿码和共线莫顿码,建立待预测点对应的预设相邻信息表,具体地,编码器可以将待预测点的共面相邻点和其对应的共面莫顿码存储值预设相邻信息表,同时,还可以将待预测点的共线相邻点和其对应的共线莫顿码存储值预设相邻信息表,从而完成预设相邻信息表的建立。
在本申请的实施例中,进一步地,图12为属性信息的预测方法的实现流程示意图五,如图12所示,编码器基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码的方法可以包括以下步骤:
步骤102a、从预设相邻信息表中读取待预测点对应的共面莫顿码和共线莫顿码。
步骤102b、对共面莫顿码和预设基准点的莫顿码进行求和运算,获得第一和值,对共线莫顿码和预设基准点的莫顿码进行求和运算,获得第二和值。
步骤102c、将第一和值和第二和值,确定为目标莫顿码。
在本申请的实施例中,编码器在利用当前莫顿码和待预测点对应的预设相邻信息表进行目标莫顿码的确定时,可以先从预设相邻信息表中读取共面莫顿码和共线莫顿码,也就是说,编码器可以先从预设相邻信息表中获取待预测点的共面相邻点对应的莫顿码,即共面莫顿码,同时可以从预设相邻信息表中获取待预测点的共线相邻点对应的莫顿码,即共线莫顿码。然后可以进一步利用共面莫顿码和共线莫顿码对目标莫顿码进行确定。
可以理解的是,在本申请的实施例中,编码器可以对共面莫顿码和预设基准点的莫顿码进行求和运算,获得第一和值。具体地,由于共面莫顿码可以表征预设基准点和共面相邻点之间的距离差值,因此,编码器在将共面莫顿码和预设基准点的莫顿码相加之后,便可以直接获得共面相邻点的莫顿码,即第一和值可以作为待预测点的共面相邻点的莫顿码,因此可以将第一和值确定为目标莫顿码。
相应地,在本申请中,编码器可以对共线莫顿码和预设基准点的莫顿码进行求和运算,获得第二和值。具体地,由于共线莫顿码可以表征预设基准点和共线相邻点之间的距离差值,因此,编码器在将共线莫顿码和预设基准点的莫顿码相加之后,便可以直接获得共线相邻点的莫顿码,即第二和值可以作为待预测点的共线相邻点的莫顿码,因此可以将第二和值确定为目标莫顿码。
在本申请的实施例中,进一步地,编码器在基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码之前,即步骤102之前,可以先对待预测点的相邻类型进行选择,确定相邻类型为共面类型还是共线类型。也就是说,编码器可以选择仅获取待预测点的共面相邻点的莫顿码,或者选择仅获取待预测点的共线相邻点的莫顿码。
可以理解的是,在本申请的实施例中,编码器基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码的方法可以包括以下步骤:
步骤102d、若相邻类型为共面类型,则从预设相邻信息表中读取待预测点对应的共面莫顿码。
步骤102e、对共面莫顿码和预设基准点的莫顿码进行求和运算,获得第一和值。
步骤102f、将第一和值确定为目标莫顿码。
在本申请的实施例中,如果编码器先选择相邻类型为共面相邻,那么编码器仅需要从预设相邻信息表中读取待预测点对应的共面莫顿码,然后对共面莫顿码和预设基准点的莫顿码进行求和运算,获得第一和值,最终便可以将第一和值确定为目标莫顿码。
也就是说,在本申请的实施例中,如果编码器选择仅获取待预测点的共面相邻点的莫顿码,那么编码器在利用当前莫顿码和待预测点对应的预设相邻信息表进行目标莫顿码的确定时,可以先从先从预设相邻信息表中获取待预测点的共面相邻点对应的共面莫顿码。然后可以进一步对共面莫顿码和预设基准点的莫顿码进行求和运算,由于共面莫顿码可以表征预设基准点和共面相邻点之间的距离差值,因此,编码器在将共面莫顿码和预设基准点的莫顿码相加之后,便可以将第一和值确定为目标莫顿码。
可以理解的是,在本申请的实施例中,基于距离越近,相似度越强的原则,编码器可以优先选择相邻类型为共面相邻,从而可以在降低预测残差的基础上,尽可能的减少输出的二进制码流,以提升编码效率。
进一步地,在本申请的实施例中,编码器基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码的方法还可以包括以下步骤:
步骤102g、若相邻类型为共线类型,则从预设相邻信息表中读取待预测点对应的共线莫顿码。
步骤102h、对共线莫顿码和预设基准点的莫顿码进行求和运算,获得第二和值。
步骤102i、将第二和值确定为目标莫顿码。
在本申请的实施例中,如果编码器先选择相邻类型为共线相邻,那么编码器仅需要从预设相邻信息表中读取待预测点对应的共线莫顿码,然后对共线莫顿码和预设基准点的莫顿码进行求和运算,获得第二和值,最终便可以将第二和值确定为目标莫顿码。
也就是说,在本申请的实施例中,如果编码器选择仅获取待预测点的共线相邻点的莫顿码,那么编码器在利用当前莫顿码和待预测点对应的预设相邻信息表进行目标莫顿码的确定时,可以先从先从预设相邻信息表中获取待预测点的共线相邻点对应的共线莫顿码。然后可以进一步对共线莫顿码和预设基准点的莫顿码进行求和运算,由于共线莫顿码可以表征预设基准点和共线相邻点之间的距离差值,因此,编码器在将共线莫顿码和预设基准点的莫顿码相加之后,便可以将第二和值确定为目标莫顿码。
可以理解的是,在本申请的实施例中,基于距离越近,相似度越强的原则,编码器可以优先选择相邻类型为共面相邻,但是如果待编码点云中不存在与待预测点共面相邻的共面相邻点,那么编码器便可以选择相邻类型为共线相邻,从而可以尽可能的降低预测残差,以提升编码效率。
本申请实施例提供了一种属性信息的预测方法,编码器确定待编码点云中的待预测点的当前莫顿码;基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码;其中,预设相邻信息表用于对待预测点的相邻位置与预设基准点之间的坐标差进行确定;根据目标莫顿码判断待编码点云中是否存在待预测点的相邻点;若待编码点云中存在相邻点,则根据相邻点的属性重建信息预测待预测点的属性预测值。由此可见,在本申请的实施例中,编解码器在对待预测点进行属性信息的预测时,基于预设相邻信息表,可以利用待预测点的当前莫顿码确定出待预测点周围的相邻位置对应的目标莫顿码,如果点云中在该相邻位置上存在待预测点的相邻点,那么编解码器便可以直接利用该相邻点的属性重建值预测获得待预测点的属性预测值,正是因为待预测点与相邻点之间的相关性更强,因 此通过相邻点实现待预测点的属性信息的预测,能够有效地提高预测的准确性,大大减小了预测残差,从而提高了编码效率。
基于上述实施例,在本申请的另一实施例中,如果待编码点云中存在待预测点的相邻点,那么,基于相邻点具体可以包括与待预测点共面相邻的共面相邻点,还可以包括与待预测点共线相邻的共线相邻点,因此,编码器根据相邻点的属性重建信息预测待预测点的属性预测值的方法可以包括以下步骤:
步骤301、若相邻点是与待预测点共面相邻的共面相邻点,则获取共面相邻点对应的第一属性重建值。
步骤302、计算第一属性重建值的第一平均值,并将第一平均值确定为属性预测值。
在本申请的实施例中,编码器在根据目标莫顿码判断编码点云中是否存在待预测点的相邻点之后,如果待编码点云中存在待预测点的相邻点,且存在的待预测点的相邻点仅为与待预测点共面相邻的共面相邻点,那么编码器在获取相邻点的属性重建值时,可以获取共面相邻点对应的第一属性重建值。
进一步地,在本申请的实施例中,由于待预测点存在至少一个共面相邻的共面相邻点,因此,编码器在对属性重建值进行均值计算时,可以计算至少一个第一重建值对应的第一平均值,然后编码器便可以将第一平均值确定为属性预测值,从而完成对待预测点的属性信息的预测。
示例性的,在本申请中,如果待预测点仅具有3个共面相邻点,那么编码器可以利用如下公式(4)将全部相邻点的属性重建值进行平均值计算,以获得待预测点的属性预测值:
Figure PCTCN2019122499-appb-000009
其中,
Figure PCTCN2019122499-appb-000010
为当前点的属性的预测值,a 1j为共面相邻点的属性重建值。
在本申请的实施例中,进一步地,编码器根据相邻点的属性重建信息预测待预测点的属性预测值的方法可以包括以下步骤:
步骤303、若相邻点是与待预测点共线相邻的共线相邻点,则获取共线相邻点对应的第二属性重建值。
步骤304、计算第二属性重建值的第二平均值,并将第二平均值确定为属性预测值。
在本申请的实施例中,编码器在根据目标莫顿码判断编码点云中是否存在待预测点的相邻点之后,如果待编码点云中存在待预测点的相邻点,且存在的待预测点的相邻点仅为与待预测点共线相邻的共线相邻点,那么编码器在获取相邻点的属性重建值时,可以获取共线相邻点对应的第二属性重建值。
进一步地,在本申请的实施例中,由于待预测点存在至少一个共线相邻的共线相邻点,因此,编码器在对属性重建值进行均值计算时,可以计算至少一个第二重建值对应的第二平均值,然后编码器便可以将第二平均值确定为属性预测值,从而完成对待预测点的属性信息的预测。
示例性的,在本申请中,如果待预测点仅具有2个共线相邻点,那么编码器可以利用如下公式(5)将全部相邻点的属性重建值进行平均值计算,以获得待预测点的属性预测值:
Figure PCTCN2019122499-appb-000011
其中,
Figure PCTCN2019122499-appb-000012
为当前点的属性的预测值,a 2j为共线相邻点的属性重建值。
在本申请的实施例中,进一步地,编码器根据相邻点的属性重建信息预测待预测点的属性预测值的方法可以包括以下步骤:
步骤305、若相邻点是与待预测点共面相邻的共面相邻点,和与待预测点共线相邻的共线相邻点,则获取共面相邻点对应的第一属性重建值,和共线相邻点对应的第二属性重建值。
步骤306、按照预设权重对第一属性重建值和第二属性重建值进行加权平均计算,获得加权平均值。
步骤307、将加权平均值确定为属性预测值。
在本申请的实施例中,编码器在根据目标莫顿码判断编码点云中是否存在待预测点的相邻点之后,如果待编码点云中存在待预测点的相邻点,且待预测点的相邻点既包括共面相邻点,也包括共线相邻点,那么编码器在获取相邻点的属性重建值时,可以获取共面相邻点对应的第一属性重建值,同时,获取共线相邻点对应的第二属性重建值。
进一步地,在本申请的实施例中,由于待预测点存在至少一个共面相邻的共面相邻点,和至少一个共线相邻的共线相邻点,因此,编码器在对属性重建值进行均值计算时,可以按照预设权重对第一属性重建值和第二属性重建值进行加权平均计算,从而可以获得加权平均值。其中,编码器可以基于距离越近相关性越强的原则,分别对第一属性重建值和第二属性重建值分配不同的权重值。具体地,第一属性重建值对应的权重值应该大于第二属性重建值对应的权重值。
也就是说,在本申请中,编码器在进行待预测点的属性信息的预测时,既可以同时利用待预测点的共面相邻点的第一属性重建值和共线相邻点的第二属性重建值确定待预测点的属性预测值,还可以选择利用待预测点的共面相邻点的第一属性重建值,或者共线相邻点的第二属性重建值确定待预测点的属性预测值。例如,编码器可以先查找距离为1的共面相邻点,如果存在,那么利用这些共面相邻点的属性重建值的平均值作为待预测点的属性预测值;如果待编码点云中不存在待预测点的共面相邻点,那么继续查找距离为
Figure PCTCN2019122499-appb-000013
的共线相邻点,然后利用这些共线相邻点的属性重建值的平均值作为待预测点的属性预测值。
本申请实施例提供了一种属性信息的预测方法,编码器确定待编码点云中的待预测点的当前莫顿码;基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码;其中,预设相邻信息表用于对待预测点的相邻位置与预设基准点之间的坐标差进行确定;根据目标莫顿码判断待编码点云中是否存在待预测点的相邻点;若待编码点云中存在相邻点,则根据相邻点的属性重建信息预测待预测点的属性预测值。由此可见,在本申请的实施例中,编解码器在对待预测点进行属性信息的预测时,基于预设相邻信息表,可以利用待预测点的当前莫顿码确定出待预测点周围的相邻位置对应的目标莫顿码,如果点云中在该相邻位置上存在待预测点的相邻点,那么编解码器便可以直接利用该相邻点的属性重建值预测获得待预测点的属性预测值,正是因为待预测点与相邻点之间的相关性更强,因 此通过相邻点实现待预测点的属性信息的预测,能够有效地提高预测的准确性,大大减小了预测残差,从而提高了编码效率。
基于上述实施例,在本申请的再一实施例中,图13为属性信息的预测框架示意图,如图13所示,编码器利用当前莫顿码预测属性信息的方法可以包括以下步骤:
步骤401、计算待预测点的当前莫顿码。
编码器可以先确定出待编码点云中的待预测点的莫顿码,即当前莫顿码。
步骤402、选择相邻点的相邻类型。
可以理解的是,在本申请的实施例中,编码器可以在确当相邻点的目标莫顿码之前,先对相邻类型进行选择。其中,相邻类型可以包括共面类型和共线类型,然后基于相邻类型,进一步对选择对共面莫顿码或者共线莫顿码进行获取。
需要说明的是,在本申请的实施例中,在步骤404之前,编码器还不能确定待编码点云中是否存在待预测点的相邻点,因此,此处的相邻点是假设待预测周围的相邻位置存在有点。
步骤403、基于相邻类型,确定相邻点的目标莫顿码。
如果编码器选择的相邻类型为共面相邻,那么便可以从预先建立的预设相邻信息表中获取与共面相邻点对应的共面莫顿码,并将其作为目标莫顿码;如果编码器选择的相邻类型为共线相邻,那么便可以从预先建立的预设相邻信息表中获取与共线相邻点对应的共线莫顿码,并将其作为目标莫顿码。
步骤404、判断是否存在相邻点,若存在,则执行步骤405;若不存在,则执行步骤406。
编码器可以利用目标莫顿码判断待编码点云中是否存在相邻点,具体地,编码器可以在待编码点云的点云序列集合中进行查询处理,即直接在点云序列集合中查找是否存在目标莫顿码,如果存在,便可以认为待预测点在空间中存在相邻点;相应地,如果不存在,便可以认为待预测点在空间中不存在相邻点。
步骤405、利用相邻点的属性重建值对待预测点进行属性信息的预测。
如果编码点云中存在待预测点的相邻点,那么编码器直接根据待预测点的相邻点的属性重建信息获得待预测点的属性预测值。其中,编码器可以对相邻点的属性重建值进行均值计算,将属性重建值的平均值确定为属性预测值。
步骤406、利用当前莫顿码的前一个莫顿码对待预测点进行属性信息的预测。
如果编码点云中不存在待预测点的相邻点,那么编码器需要利用当前莫顿码对应的前一个莫顿码获得待预测点的属性预测值。其中,编码器可以确定出前一个莫顿码对应的已重建点,然后可以获取该已重建点的属性重建值,并将该已重建点的属性重建值确定为待预测点的属性预测值。
步骤407、计算待预测点对应的预测残差。
步骤408、生成码流。
编码器在预测获得待预测点的属性预测值之后,便可以利用属性预测值进行预测残差的计算,然后对预测残差进行编码,获得并输出二进制码流。
在本申请的实施例中,示例性的另一种预测属性信息的实现方式,图14为属性信息的预测算法流程图,如图14所示,编码器进行属性信息的预测时,具体实现流程可以包括以下步骤:
步骤501、确定待预测点的当前莫顿码Cur_pos。
编码器可以先确定出待编码点云中的待预测点的莫顿码,即当前莫顿码Cur_pos。
步骤502、定位预设基准点的莫顿码base_pos。
编码器对Cur_pos进行操作,定位至基准点的莫顿码base_pos。其中,编码器可以预先计算基准点base_pos与待预测点的相邻点之间的坐标差值,将这些差值进行莫顿编码,并建立预设表。
步骤503、基于base_pos,计算获得相邻点的目标莫顿码neighbor_pos。
编码器可以根据预设表进行莫顿码的加法来计算与待预测点的相邻各位置的目标莫顿码。具体地,编码器可以基于base_pos,通过莫顿码的加法计算获得neighbor_pos。其中,neighbor_pos=morton3dAdd(base_pos,mortonOffset)。MortonOffset表征莫顿编码后的坐标差值。
步骤504、基于neighbor_pos,查找相邻点Neighbor是否存在,如果存在,则直接执行步骤506;如果不存在,则先执行步骤505,然后再继续执行步骤506。
编码器可以利用目标莫顿码判断待编码点云中是否存在相邻点,具体地,编码器可以在待编码点云的点云序列集合中进行查询处理,即直接在点云序列集合中查找是否存在目标莫顿码,如果存在,便可以认为待预测点在空间中存在相邻点;相应地,如果不存在,便可以认为待预测点在空间中不存在相邻点。
步骤505、将当前莫顿码的上一个莫顿码lastMortonCode对应的点作为待预测点的相邻点。
如果待编码点云中不存在待预测点的相邻点,那么编码器需要利用当前莫顿码对应的前一个莫顿码lastMortonCode对待预测点的属性信息进行预测,具体地,可以认为前一个莫顿码为待预测点的相邻点的莫顿码,即将当前莫顿码的上一个莫顿码lastMortonCode对应的点作为待预测点的相邻点。其中,Neighbor=lastMortonCode。
步骤506、利用相邻点的重建值neighbor[i]对待预测点的属性预测值Pred进行确定。
编码器根据待预测点的相邻点的属性重建信息获得待预测点的属性预测值。其中,编码器可以对相邻点的属性重建值neighbor[i]进行均值计算,将属性重建值的平均值确定为属性预测值。具体地,Pred=average(neighbor[i])。
步骤507、基于Pred计算待预测点的预测残差Residual。
编码器在预测获得待预测点的属性预测值之后,便可以利用属性预测值进行预测残差的计算,然后对预测残差进行编码,生成并输出属性码流。
由此可见,在本申请的实施例中,如果基于目标莫顿码,确定待编码点云中不存在待预测点的相邻点,那么编码器可以先将点云序列集合中的、当前莫顿码的前一个莫顿码所对应的已重建点作为待预测点的相邻点,然后根据 该相邻点的属性重建信息预测待预测点的属性预测值。
本申请实施例提供了一种属性信息的预测方法,编码器确定待编码点云中的待预测点的当前莫顿码;基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码;其中,预设相邻信息表用于对待预测点的相邻位置与预设基准点之间的坐标差进行确定;根据目标莫顿码判断待编码点云中是否存在待预测点的相邻点;若待编码点云中存在相邻点,则根据相邻点的属性重建信息预测待预测点的属性预测值。由此可见,在本申请的实施例中,编解码器在对待预测点进行属性信息的预测时,基于预设相邻信息表,可以利用待预测点的当前莫顿码确定出待预测点周围的相邻位置对应的目标莫顿码,如果点云中在该相邻位置上存在待预测点的相邻点,那么编解码器便可以直接利用该相邻点的属性重建值预测获得待预测点的属性预测值,正是因为待预测点与相邻点之间的相关性更强,因此通过相邻点实现待预测点的属性信息的预测,能够有效地提高预测的准确性,大大减小了预测残差,从而提高了编码效率。
本申请一实施例提供了一种属性信息的预测方法,该方法应用于解码器中,图15为属性信息的预测方法的实现流程示意图六,如图15所示,解码器预测待预测点的属性信息的方法可以包括以下步骤:
步骤601、确定待解码点云中的待预测点的当前莫顿码。
在本申请的实施例中,解码器可以先确定待解码点云中的待预测点的当前莫顿码。
需要说明的是,在本申请的实施例中,在对待解码点云进行解码处理时,待解码点云的几何信息和待解码点云所对应的属性信息是分开进行解码的。其中,在几何信息解码完成后,对几何信息进行重建,而属性信息的解码将依赖于重建的几何信息。
进一步地,在本申请的实施例中,在对待解码点云的几何信息进行解码之后,解码器可以利用待解码点云中每一个点的集合信息,确定出每一个点的莫顿码。在得到每个点的莫顿码之后,解码器可以将待解码点云中的所有点,按照由小至大的顺序,对全部点的全部莫顿码进行排序,生成待解码点云对应的点云序列集合。其中,点云序列集合中存储有待解码点云中的全部点的全部莫顿码。
需要说明的是,在本申请的实施例中,解码器对待解码点云的属性信息进行解码时,可以按照莫顿码由小到大的顺序依次对待解码点云的全部点进行属性信息的预测。
可以理解的是,在本申请的实施例中,待预测点可以为待解码点云中的任意一个点,当前莫顿码为待预测点的莫顿码,在对待预测点进行属性信息的预测时,小于当前莫顿码的其他莫顿码所对应的其他点已经完成了属性信息的预测,生成对应的属性重建信息。
进一步地,在本申请的实施例中,解码器在对待预测点进行属性信息的预测时,需要先对待预测点的莫顿码进行确定,获得当前莫顿码。
步骤602、基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码;其中,预设相邻信息表用于对待预测点的相邻位置与预设基准点之间的坐标差进行确定。
在本申请的实施例中,解码器在确定待预测点的当前莫顿码之后,可以基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码。其中,目标莫顿码可以表征待预测点周围的相邻位置对应的莫顿码。
需要说明的是,在本申请的实施例中,预设相邻信息表可以表征待预测点的周围的相邻位置与预设基准点之间的坐标差。其中,待预测点的相邻位置可以包括与待预测点共面相邻的共面相邻点,还可以包括与待预测点共线相邻的共线相邻点。
可以理解的是,在本申请的实施例中,在对待预测点进行属性信息的预测时,如果将待预测点作为待解码点云的空间中心,那么预设基准点可以为以待预测点为中心的空间的坐标原点。具体地,基于同一个预设基准点,对预设基准点与待预测点之间的距离,和预设基准点与待预测点的相邻位置之间的距离进行差值运算,便可以获得相邻位置与待预测点之间的坐标差。其中,预设基准点可以为待解码点云中的莫顿码最小的点。
进一步地,在本申请的实施例中,解码器在基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码之前,需要先建立待预测点对应的预设相邻信息表。也就是说,预设相邻信息表是基于待预测点建立的。
需要说明的是,在本申请的实施例中,解码器在建立待预测点对应的预设相邻信息表时,可以对待预测点的当前莫顿码(cur_pos)进行操作,具体地,解码器可以先定位至预设基准点的莫顿码(base_pos),然后基于预设基准点的莫顿码,计算预设基准点和待预测点的相邻位置之间的坐标差值,接下来继续对这些坐标差值进行莫顿编码,从而可以建立待预测点对应的预设相邻信息表。
也就是说,在本申请的实施例中,由于待预测点的相邻位置可以包括与待预测点共面相邻的共面相邻点,和与待预测点共线相邻的共线相邻点,因此,解码器在建立待预测点对应的预设相邻信息表时,可以分别计算预设基准点与共面相邻点之间的第一坐标差,计算预设基准点与共线相邻点之间的第二坐标差,然后可以对第一坐标差进行莫顿编码,获得共面相邻点对应的共面莫顿码,同时,可以对第二坐标差进行莫顿编码,获得共线相邻点对应的共线莫顿码,最后,解码器可以基于共面莫顿码和共线莫顿码,建立待预测点对应的预设相邻信息表。
进一步地,在本申请的实施例中,解码器在确定待解码点云中的待预测点的当前莫顿码之后,可以基于当前莫顿码对应的预设相邻信息表中确定出待预测点对应的目标莫顿码,其中,目标莫顿码可以表征待预测点周围的相邻位置对应的莫顿码。
具体地,在本申请的实施例中,解码器在基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码时,由于预设相邻信息表中存储有对预设基准点和相邻位置之间的坐标差值进行莫顿解码之后的莫顿码,因此,解码器可以从预设相邻信息表中提取与相邻位置对应的坐标差值的莫顿码,便可以进一步利用该坐标差值的莫顿码确定出目标莫顿码。
可以理解的是,在本申请的实施例中,由于预设相邻信息表中存储有待预测点对应的共面莫顿码和共线莫顿码,因此,解码器在进行目标莫顿码的确定时,可以从预设相邻信息表中提取共面莫顿码和/或共线莫顿码,然后 对当前莫顿码与共面莫顿码和/或共线莫顿码进行求和运算,从而可以获得目标莫顿码。
需要说明的是,在本申请的实施例中,正式由于待预测点的相邻位置既包括共面相邻点,也包括共线相邻点,因此,解码器在在进行目标莫顿码的确定时,还可以先进行相邻类型的确定,其中,相邻类型可以包括共面相邻和共线相邻,然后可以基于确定的相邻类型,进一步从预设相邻信息表中提取共面莫顿码或共线莫顿码,并基于共面莫顿码或共线莫顿码确定目标莫顿码。
示例性的,在本申请中,对于待预测点,如果共面相邻点与其之间的距离为1,那么共线相邻点与其之间的距离为
Figure PCTCN2019122499-appb-000014
基于距离越近相关性越强的原则,可以优先选取共面相邻的相邻类型,然后从预设相邻信息表中提取共面莫顿码,以利用共面莫顿码确定出目标莫顿码。
需要说明的是,在本申请的实施例中,目标莫顿码可以表征待预测点周围的相邻位置对应的莫顿码,因此,解码器可以利用目标莫顿码对待预测点周围的相邻点进行查找和确定。
步骤603、根据目标莫顿码判断待解码点云中是否存在待预测点的相邻点。
在本申请的实施例中,解码器在基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码之后,便可以根据目标莫顿码来判断待解码点云中是否存在待预测点的相邻点。也就是说,解码器可以利用待预测点周围的相邻位置对应的莫顿码,进一步对待解码点云中是否存在与待预测点相邻的点进行判定。
需要说明的是,在本申请的实施例中,解码器在确定出目标莫顿码之后,并不能直接根据目标莫顿码确定待预测点的相邻点,这是由于点云在空间中并不是均匀分布,待预测点的相邻位置上并不一定真的存在相邻点,也就是说,按照待预测点的相邻位置确定的目标莫顿码并不一定真的在待解码点云中对应有点,因此,解码器在确定出目标莫顿码之后,还需要根据目标莫顿码判断待解码点云中是否存在待预测点的相邻点。
可以理解的是,在本申请的实施例中,解码器在得到每个点的莫顿码之后,会按照由小至大的顺序,对全部点的全部莫顿码进行排序,生成待解码点云对应的点云序列集合,因此,解码器在确定出目标莫顿码之后,可以利用待解码点云对应的点云序列集合,结合目标莫顿码,进一步对是否存在待预测点的相邻点进行判断。
进一步地,在本申请的实施例中,解码器在根据点云序列集合和目标莫顿码判断解码点云中是否存在待预测点的相邻点时,可以先获取待解码点云的点云序列集合,然后利用目标莫顿码在点云序列集合中进行查询处理,可以获得查询结果,如果查询结果为点云序列集合中存在目标莫顿码,那么解码器便可以判定待解码点云中存在待预测点对应的相邻点。也就是说,在本申请中,解码器在确定目标莫顿码之后,直接在点云序列集合中查找是否存在目标莫顿码,如果存在,便可以认为待预测点在空间中存在相邻点;相应地,如果不存在,便可以认为待预测点在空间中不存在相邻点。
需要说明的是,在本申请的实施例中,解码器在基于目标莫顿码在点云序列集合中进行查询处理时,既可以根据目标莫顿码直接遍历查询点云序列集合中的每一个莫顿码,以获得查询结果;还可以根据目标莫顿码,按照预设查询算法进行点云序列集合的查询处理,从而获得查询结果。
也就是说,在本申请的实施例中,解码器在基于目标莫顿码在点云序列集合中进行查询处理时,既可以对点云序列集合使用的遍历的方法,也可以为其他对点云序列集合进行快速查找的算法。
步骤604、若待解码点云中存在相邻点,则根据相邻点的属性重建信息预测待预测点的属性预测值。
在本申请的实施例中,解码器在根据目标莫顿码判断解码点云中是否存在待预测点的相邻点之后,如果待解码点云中存在待预测点的相邻点,那么解码器可以直接根据待预测点的相邻点的属性重建信息,对待预测点的属性信息进行预测,获得属性预测值。
需要说明的是,在本申请的实施例中,如果待预测点存在相邻点,那么解码器在根据相邻点的属性重建信息预测待预测点的属性预测值时,可以先获取相邻点的属性重建值,然后对属性重建值进行均值计算,获得属性重建值对应的平均值,便可以将该平均值确定为属性预测值。
可以理解的时,在本申请的实施例中,由于待预测点的相邻点可以为与待预测点共面相邻的共面相邻点,还可以为与待预测点共线相邻的共线相邻点,因此,如果解码器确定出待预测点的相邻点为共面相邻点或者共线相邻点,那么解码器在获取相邻点的属性重建值时,可以获取共面相邻点对应的第一属性重建值,或者,获取共线相邻点对应的第二属性重建值。
相应地,在本申请中,由于待预测点存在至少一个共面相邻的共面相邻点,和至少一个共线相邻的共线相邻点,因此,解码器在对属性重建值进行均值计算时,可以计算至少一个第一重建值对应的第一平均值,或者,计算至少一个第二重建值对应的第二平均值,最后,解码器便可以将第一平均值或第二平均值确定为属性预测值,从而完成对待预测点的属性信息的预测。
进一步地,在本申请的实施例中,如果解码器确定出待预测点的相邻点为共面相邻点和共线相邻点,那么解码器在获取相邻点的属性重建值时,可以获取共面相邻点对应的第一属性重建值,同时,获取共线相邻点对应的第二属性重建值。
相应地,在本申请中,由于待预测点存在至少一个共面相邻的共面相邻点,和至少一个共线相邻的共线相邻点,因此,解码器在对属性重建值进行均值计算时,可以按照预设权重对第一属性重建值和第二属性重建值进行加权平均计算,从而可以获得加权平均值。最后,解码器便可以将加权平均值确定为属性预测值,从而完成对待预测点的属性信息的预测。
可以理解的是,在本申请的实施例中,解码器在利用预设权重对第一属性重建值和第二属性重建值进行加权平均计算时,可以分别对第一属性重建值和第二属性重建值分配不同的权重值。具体地,基于距离越近相关性越强的原则,第一属性重建值对应的权重值应该大于第二属性重建值对应的权重值。
示例性的,在本申请中,如果待预测点具有共面相邻点和共线相邻点等多个相邻点,例如,待预测点存在6个相邻点进行属性信息的预测,包括3个共面相邻点和3个共线相邻点。解码器可以将全部相邻点的属性重建值进行 基于距离的加权平均运算,以实现对待预测点的属性信息的预测,获得待预测点的属性预测值。也就是说,根据每个相邻点与待预测点之间的距离,随着距离的增加相关性减弱,因此对距离较小的相邻点的属性重建值赋予较大的权重。
可以理解的是,在本申请的实施例中,解码器在进行待预测点的属性信息的预测时,既可以同时利用待预测点的共面相邻点的第一属性重建值和共线相邻点的第二属性重建值确定待预测点的属性预测值,还可以选择利用待预测点的共面相邻点的第一属性重建值,或者共线相邻点的第二属性重建值确定待预测点的属性预测值。其中,基于距离越近相关性越强的原则,可以优先选择距离更近的共面相邻点进行待预测点的属性信息的预测。
示例性的,在本申请中,解码器可以先查找距离为1的共面相邻点,如果存在,那么利用这些共面相邻点的属性重建值的平均值作为待预测点的属性预测值;如果待解码点云中不存在待预测点的共面相邻点,那么继续查找距离为
Figure PCTCN2019122499-appb-000015
的共线相邻点,然后利用这些共线相邻点的属性重建值的平均值作为待预测点的属性预测值。
图16为属性信息的预测方法的实现流程示意图七,如图16所示,在本申请的实施例中,解码器在根据目标莫顿码判断解码点云中是否存在相邻点之后,即步骤603之后,码器预测待预测点的属性信息的方法还可以包括以下步骤:
步骤605、若解码点云中不存在相邻点,则利用当前莫顿码对应的前一个莫顿码预测待预测点的属性预测值。
在本申请的实施例中,解码器在根据目标莫顿码判断解码点云中是否存在待预测点的相邻点之后,如果待解码点云中不存在待预测点的相邻点,那么解码器便无法根据待预测点的相邻点对待预测点的属性信息进行预测,因此,解码器需要利用当前莫顿码对应的前一个莫顿码对待预测点的属性信息进行预测,从而获得待预测点的属性预测值。
需要说明的是,在本申请的实施例中,待预测点不存在相邻点,也就是说,待预测点的周围并不存在共面相邻点和共线相邻点,那么只能利用当前莫顿码的前一个莫顿码所对应的属性重建值来预测待预测点的属性信息。
进一步地,在本申请的实施例中,解码器在利用当前莫顿码对应的前一个莫顿码预测待预测点的属性预测值时,可以先从待解码点云中确定出前一个莫顿码对应的已重建点,然后可以获取该已重建点的属性重建值,并将该已重建点的属性重建值确定为待预测点的属性预测值。也就是说,在本申请中,基于目标莫顿码,如果待解码点云中不存在待预测点的相邻点,那么就直接将当前莫顿码的前一个莫顿码所对应的已重建点的属性重建值,作为待预测点的属性预测值,以完成待预测点的属性信息的预测。
可以理解的是,在本申请的实施例中,如果待解码点云中不存在待预测点的相邻点,那么解码器可以先从待解码点云的点云序列集合中查找当前莫顿码的前一个莫顿码。其中,点云序列集合中按照由小至大的顺序存储有待解码点云中的全部点的全部莫顿码。
图17为属性信息的预测方法的实现流程示意图八,如图17所示,在本申请的实施例中,解码器在根据目标莫顿码判断解码点云中是否存在相邻点之后,即步骤603之后,且根据相邻点的属性重建信息预测待预测点的属性预测值之前,即步骤604之前,解码器对待预测点的属性信息进行预测的方法还可以包括以下步骤:
步骤606、从待解码点云中确定前一个莫顿码对应的已重建点。
步骤607、将已重建点确定为待预测点的相邻点。
在本申请的实施例中,解码器在根据目标莫顿码判断解码点云中是否存在待预测点的相邻点之后,如果待解码点云中不存在待预测点的相邻点,也就是说,待预测点的周围并不存在共面相邻点和共线相邻点,那么解码器可以先从待解码点云中确定出前一个莫顿码对应的已重建点。
进一步地,在本申请的实施例中,解码器在从待解码点云中确定前一个莫顿码对应的已重建点之后,便可以将该已重建点确定待预测点的相邻点。也就是说,在本申请中,基于目标莫顿码,如果待解码点云中不存在待预测点的相邻点,那么就直接将当前莫顿码的前一个莫顿码所对应的已重建点作为待预测点的相邻点,然后再继续按照步骤604的方法完成待预测点的属性信息的预测。
可以理解的是,在本申请的实施例中,在步骤603之后,即解码器在根据目标莫顿码判断待解码点云中是否存在相邻点之后,如果待解码点云中存在待预测点的相邻点,那么解码器可以直接根据相邻点的属性重建信息预测待预测点的属性预测值;如果待解码点云中不存在待预测点的相邻点,那么解码器可以先从待解码点云的点云序列集合中查找当前莫顿码的前一个莫顿码,然后从待解码点云中确定前一个莫顿码对应的已重建点,并将该已重建点确定为待预测点的相邻点,从而便可以继续根据相邻点的属性重建信息预测待预测点的属性预测值。
由此可见,在本申请的实施例中,如果基于目标莫顿码,确定待解码点云中不存在待预测点的相邻点,那么解码器可以先将点云序列集合中的、当前莫顿码的前一个莫顿码所对应的已重建点作为待预测点的相邻点,然后根据该相邻点的属性重建信息预测待预测点的属性预测值。
需要说明的是,在本申请的实施例中,基于上述步骤601至步骤607的方法,解码器在对待预测点进行属性信息的预测时,基于预设相邻信息表,可以利用待预测点的当前莫顿码确定出待预测点周围的相邻位置对应的目标莫顿码,如果点云中在该相邻位置上存在待预测点的相邻点,那么编解码器便可以直接利用该相邻点的属性重建值预测获得待预测点的属性预测值,正是因为待预测点与相邻点之间的相关性更强,因此通过相邻点实现待预测点的属性信息的预测,能够有效地提高预测的准确性。
进一步地,在本申请的实施例中,如果对待解码点云进行了分层处理,那么解码器也可以将上述步骤601至步骤607的方法应用于待解码点云的层内预测。
在本申请的实施例中,进一步地,本申请提出的属性信息的预测方法,可以充分利用点云的空间相关性,使得预测残差更小,更适用于后续的量化及熵解码,在保持PSNR性能的前提下,实现更高的增益。
本申请实施例提供了一种属性信息的预测方法,解码器确定待解码点云中的待预测点的当前莫顿码;基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码;其中,预设相邻信息表用于对待预测点的相邻位置与预设基准点之间的坐标差进行确定;根据目标莫顿码判断待解码点云中是否存在待预测点的相邻点;若待解码点 云中存在相邻点,则根据相邻点的属性重建信息预测待预测点的属性预测值。由此可见,在本申请的实施例中,编解码器在对待预测点进行属性信息的预测时,基于预设相邻信息表,可以利用待预测点的当前莫顿码确定出待预测点周围的相邻位置对应的目标莫顿码,如果点云中在该相邻位置上存在待预测点的相邻点,那么编解码器便可以直接利用该相邻点的属性重建值预测获得待预测点的属性预测值,正是因为待预测点与相邻点之间的相关性更强,因此通过相邻点实现待预测点的属性信息的预测,能够有效地提高预测的准确性,大大减小了预测残差,从而提高了编码效率。
基于上述实施例,本申请的再一实施例提出了一种编码器,图18为编码器的组成结构示意图一,如图18所示,本申请实施例提出的编码器100可以包括第一确定部分101、第一判断部分102,第一预测部分103。
所述第一确定部分101,配置为确定待编码点云中的待预测点的当前莫顿码;以及基于所述当前莫顿码,根据预设相邻信息表确定所述待预测点对应的目标莫顿码;其中,所述预设相邻信息表用于对所述待预测点的相邻位置与预设基准点之间的坐标差进行确定;
所述第一判断部分102,配置为根据所述目标莫顿码判断所述待编码点云中是否存在所述待预测点的相邻点;
所述第一预测部分103,配置为若所述待编码点云中存在所述相邻点,则根据所述相邻点的属性重建信息预测所述待预测点的属性预测值。
图19为编码器的组成结构示意图二,如图19所示,本申请实施例提出的编码器100还可以包括第一处理器104、存储有第一处理器104可执行指令的第一存储器105、第一通信接口106,和用于连接第一处理器104、第一存储器105以及第一通信接口106的第一总线107。
进一步地,在本申请的实施例中,上述第一处理器104,用于确定待编码点云中的待预测点的当前莫顿码;基于所述当前莫顿码,根据预设相邻信息表确定所述待预测点对应的目标莫顿码;其中,所述预设相邻信息表用于对所述待预测点的相邻位置与预设基准点之间的坐标差进行确定;
根据所述目标莫顿码判断所述待编码点云中是否存在所述待预测点的相邻点;若所述待编码点云中存在所述相邻点,则根据所述相邻点的属性重建信息预测所述待预测点的属性预测值。
另外,在本实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中,基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或processor(处理器)执行本实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例提供了一种编码器,该编码器确定待编码点云中的待预测点的当前莫顿码;基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码;其中,预设相邻信息表用于对待预测点的相邻位置与预设基准点之间的坐标差进行确定;根据目标莫顿码判断待编码点云中是否存在待预测点的相邻点;若待编码点云中存在相邻点,则根据相邻点的属性重建信息预测待预测点的属性预测值。由此可见,在本申请的实施例中,编解码器在对待预测点进行属性信息的预测时,基于预设相邻信息表,可以利用待预测点的当前莫顿码确定出待预测点周围的相邻位置对应的目标莫顿码,如果点云中在该相邻位置上存在待预测点的相邻点,那么编解码器便可以直接利用该相邻点的属性重建值预测获得待预测点的属性预测值,正是因为待预测点与相邻点之间的相关性更强,因此通过相邻点实现待预测点的属性信息的预测,能够有效地提高预测的准确性,大大减小了预测残差,从而提高了编码效率。
基于上述实施例,在本申请的另一实施例中,图20为解码器的组成结构示意图一,如图20所示,本申请实施例提出的解码器200可以包括第二确定部分201,第二判断部分202以及第二预测部分203。
所述第二确定部分201,配置为确定待解码点云中的待预测点的当前莫顿码;以及基于所述当前莫顿码,根据预设相邻信息表确定所述待预测点对应的目标莫顿码;其中,所述预设相邻信息表用于对所述待预测点的相邻位置与预设基准点之间的坐标差进行确定;
所述第二判断部分202,配置为根据所述目标莫顿码判断所述待解码点云中是否存在所述待预测点的相邻点;
所述第二预测部分203,配置为若所述待解码点云中存在所述相邻点,则根据所述相邻点的属性重建信息预测所述待预测点的属性预测值。
图21为解码器的组成结构示意图二,如图21所示,本申请实施例提出的解码器200还可以包括第二处理器204、存储有第二处理器204可执行指令的第二存储器205、第二通信接口206,和用于连接第二处理器204、第饿存储器205以及第二通信接口206的第二总线207。
进一步地,在本申请的实施例中,上述第二处理器204,用于确定待解码点云中的待预测点的当前莫顿码;基于所述当前莫顿码,根据预设相邻信息表确定所述待预测点对应的目标莫顿码;其中,所述预设相邻信息表用于对所述待预测点的相邻位置与预设基准点之间的坐标差进行确定;根据所述目标莫顿码判断所述待解码点云中是否存在所述待预测点的相邻点;若所述待解码点云中存在所述相邻点,则根据所述相邻点的属性重建信息预测所述待预测点的属性预测值。
另外,在本实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可 读取存储介质中,基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或processor执行本实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例提供了一种解码器,该解码器确定待解码点云中的待预测点的当前莫顿码;基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码;其中,预设相邻信息表用于对待预测点的相邻位置与预设基准点之间的坐标差进行确定;根据目标莫顿码判断待解码点云中是否存在待预测点的相邻点;若待解码点云中存在相邻点,则根据相邻点的属性重建信息预测待预测点的属性预测值。由此可见,在本申请的实施例中,编解码器在对待预测点进行属性信息的预测时,基于预设相邻信息表,可以利用待预测点的当前莫顿码确定出待预测点周围的相邻位置对应的目标莫顿码,如果点云中在该相邻位置上存在待预测点的相邻点,那么编解码器便可以直接利用该相邻点的属性重建值预测获得待预测点的属性预测值,正是因为待预测点与相邻点之间的相关性更强,因此通过相邻点实现待预测点的属性信息的预测,能够有效地提高预测的准确性,大大减小了预测残差,从而提高了编码效率。
本申请实施例提供计算机可读存储介质和计算机可读存储介质,其上存储有程序,该程序被处理器执行时实现如上述实施例所述的方法。
具体来讲,本实施例中的一种属性信息的预测方法对应的程序指令可以被存储在光盘,硬盘,U盘等存储介质上,当存储介质中的与一种属性信息的预测方法对应的程序指令被一电子设备读取或被执行时,包括如下步骤:
确定待编码点云中的待预测点的当前莫顿码;
基于所述当前莫顿码,根据预设相邻信息表确定所述待预测点对应的目标莫顿码;其中,所述预设相邻信息表用于对所述待预测点的相邻位置与预设基准点之间的坐标差进行确定;
根据所述目标莫顿码判断所述待编码点云中是否存在所述待预测点的相邻点;
若所述待编码点云中存在所述相邻点,则根据所述相邻点的属性重建信息预测所述待预测点的属性预测值。
当存储介质中的与一种属性信息的预测方法对应的程序指令被一电子设备读取或被执行时,还包括如下步骤:
确定待解码点云中的待预测点的当前莫顿码;
基于所述当前莫顿码,根据预设相邻信息表确定所述待预测点对应的目标莫顿码;其中,所述预设相邻信息表用于对所述待预测点的相邻位置与预设基准点之间的坐标差进行确定;
根据所述目标莫顿码判断所述待解码点云中是否存在所述待预测点的相邻点;
若所述待解码点云中存在所述相邻点,则根据所述相邻点的属性重建信息预测所述待预测点的属性预测值。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的实现流程示意图和/或方框图来描述的。应理解可由计算机程序指令实现流程示意图和/或方框图中的每一流程和/或方框、以及实现流程示意图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在实现流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在实现流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在实现流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。
工业实用性
本申请实施例提供了一种属性信息的预测方法、编码器、解码器及存储介质,编码器确定待编码点云中的待预测点的当前莫顿码;基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码;其中,预设相邻信息表用于对待预测点的相邻位置与预设基准点之间的坐标差进行确定;根据目标莫顿码判断待编码点云中是否存在待预测点的相邻点;若待编码点云中存在相邻点,则根据相邻点的属性重建信息预测待预测点的属性预测值。解码器确定待解码点云中的待预测点的当前莫顿码;基于当前莫顿码,根据预设相邻信息表确定待预测点对应的目标莫顿码;根据目标莫顿码判断待解码点云中是否存在待预测点的相邻点;若待解码点云中存在相邻点,则根据相邻点的属性重建信息预测待预测点的属性预测值。由此可见,在本申请的实施例中,编解码器在对待预测点进行属性信息的预测时,基于预设相邻信息表,可以利用待预测点的当前莫顿码确定出待预测点周围的相邻位置对应的目标莫顿码,如果点云中在该相邻位置上存在待预测点的相邻点,那么编解码器便可以直接利用该相邻点的属性重建值预测获得待预测点的属性预测值,正是因为待预测点与相邻点之间的相关性更强,因此通过相邻点实现待预测点的属性信息的预测,能够有效地提高预测的准确性,大大减小了预测残差,从而提高了编码效率。

Claims (39)

  1. 一种属性信息的预测方法,应用于编码器中,所述方法包括:
    确定待编码点云中的待预测点的当前莫顿码;
    基于所述当前莫顿码,根据预设相邻信息表确定所述待预测点对应的目标莫顿码;其中,所述预设相邻信息表用于对所述待预测点的相邻位置与预设基准点之间的坐标差进行确定;
    根据所述目标莫顿码判断所述待编码点云中是否存在所述待预测点的相邻点;
    若所述待编码点云中存在所述相邻点,则根据所述相邻点的属性重建信息预测所述待预测点的属性预测值。
  2. 根据权利要求1所述的方法,其中,所述基于所述当前莫顿码,根据预设相邻信息表确定所述待预测点对应的目标莫顿码之前,所述方法还包括:
    建立所述待预测点对应的所述预设相邻信息表。
  3. 根据权利要求2所述的方法,其中,所述相邻位置包括:与待预测点共面相邻的共面相邻点,和与待预测点共线相邻的共线相邻点,所述建立所述待预测点对应的所述预设相邻信息表,包括:
    定位所述预设基准点;
    计算所述预设基准点与所述共面相邻点之间的第一坐标差,计算所述预设基准点与所述共线相邻点之间的第二坐标差;
    对所述第一坐标差进行莫顿编码,获得所述共面相邻点对应的共面莫顿码,对所述第二坐标差进行莫顿编码,获得所述共线相邻点对应的共线莫顿码;
    基于所述共面莫顿码和所述共线莫顿码,建立所述待预测点对应的所述预设相邻信息表。
  4. 根据权利要求3所述的方法,其中,所述基于所述当前莫顿码,根据预设相邻信息表确定所述待预测点对应的目标莫顿码,包括:
    从所述预设相邻信息表中读取所述待预测点对应的所述共面莫顿码和所述共线莫顿码;
    对所述共面莫顿码和所述预设基准点的莫顿码进行求和运算,获得第一和值,对所述共线莫顿码和所述预设基准点的莫顿码进行求和运算,获得第二和值;
    将所述第一和值和所述第二和值,确定为所述目标莫顿码。
  5. 根据权利要求3所述的方法,其中,所述基于所述当前莫顿码,根据预设相邻信息表确定所述待预测点对应的目标莫顿码之前,所述方法还包括:
    确定相邻类型;其中,所述相邻类型包括:共面类型和共线类型。
  6. 根据权利要求5所述的方法,其中,所述基于所述当前莫顿码,根据预设相邻信息表确定所述待预测点对应的目标莫顿码,包括:
    若所述相邻类型为所述共面类型,则从所述预设相邻信息表中读取所述待预测点对应的所述共面莫顿码;
    对所述共面莫顿码和所述预设基准点的莫顿码进行求和运算,获得第一和值;
    将所述第一和值确定为所述目标莫顿码。
  7. 根据权利要求5所述的方法,其中,所述基于所述当前莫顿码,根据预设相邻信息表确定所述待预测点对应的目标莫顿码,包括:
    若所述相邻类型为所述共线类型,则从所述预设相邻信息表中读取所述待预测点对应的所述共线莫顿码;
    对所述共线莫顿码和所述预设基准点的莫顿码进行求和运算,获得第二和值;
    将所述第二和值确定为所述目标莫顿码。
  8. 根据权利要求1所述的方法,其中,所述根据所述目标莫顿码判断所述待编码点云中是否存在所述待预测点的相邻点,包括:
    获取所述待编码点云的点云序列集合;
    基于所述目标莫顿码在所述点云序列集合中进行查询处理,获得查询结果;
    若所述查询结果为所述点云序列集合中存在所述目标莫顿码,则判定存在所述相邻点。
  9. 根据权利要求8所述的方法,其中,所述基于所述目标莫顿码在所述点云序列集合中进行查询处理,获得查询结果,包括:
    基于所述目标莫顿码,遍历所述点云序列集合,获得所述查询结果。
  10. 根据权利要求8所述的方法,其中,所述基于所述目标莫顿码在所述点云序列中进行查询处理,获得查询结果,包括:
    基于所述目标莫顿码,按照预设查询算法在所述点云序列集合中查询,获得所述查询结果。
  11. 根据权利要求1所述的方法,其中,所述根据所述相邻点的属性重建信息预测所述待预测点的属性预测值,包括:
    若所述相邻点是与待预测点共面相邻的共面相邻点,则获取所述共面相邻点对应的第一属性重建值;
    计算所述第一属性重建值的第一平均值,并将所述第一平均值确定为所述属性预测值。
  12. 根据权利要求1所述的方法,其中,所述根据所述相邻点的属性重建信息预测所述待预测点的属性预测值,包括:
    若所述相邻点是与待预测点共线相邻的共线相邻点,则获取所述共线相邻点对应的第二属性重建值;
    计算所述第二属性重建值的第二平均值,并将所述第二平均值确定为所述属性预测值。
  13. 根据权利要求1所述的方法,其中,所述根据所述相邻点的属性重建信息预测所述待预测点的属性预测值,包括:
    若所述相邻点是与待预测点共面相邻的共面相邻点,和与待预测点共线相邻的共线相邻点,则获取所述共面 相邻点对应的第一属性重建值,和所述共线相邻点对应的第二属性重建值;
    按照预设权重对所述第一属性重建值和所述第二属性重建值进行加权平均计算,获得加权平均值;
    将所述加权平均值确定为所述属性预测值。
  14. 根据权利要求1所述的方法,其中,所述根据所述目标莫顿码判断所述待编码点云中是否存在所述相邻点之后,所述方法还包括:
    若所述待编码点云中不存在所述相邻点,则利用所述当前莫顿码对应的前一个莫顿码预测所述待预测点的属性预测值。
  15. 根据权利要求14所述的方法,其中,所述利用所述当前莫顿码对应的前一个莫顿码预测所述待预测点的属性预测值,包括:
    从所述待编码点云中确定所述前一个莫顿码对应的已重建点;
    将所述已重建点的重建值确定为所述属性预测值。
  16. 根据权利要求1所述的方法,其中,所述根据所述目标莫顿码判断所述待编码点云中是否存在所述相邻点之后,所述根据所述相邻点的属性重建信息预测所述待预测点的属性预测值之前,所述方法还包括:
    从所述待编码点云中确定所述前一个莫顿码对应的已重建点;
    将所述已重建点确定为所述待预测点的所述相邻点。
  17. 根据权利要求1至16任一项所述的方法,其中,所述根据所述相邻点的属性重建信息预测所述待预测点的属性预测值之后,所述方法还包括:
    根据所述属性预测值计算所述待预测点的预测残差;
    对所述预测残差进行编码,生成码流。
  18. 一种属性信息的预测方法,应用于解码器中,所述方法包括:
    确定待解码点云中的待预测点的当前莫顿码;
    基于所述当前莫顿码,根据预设相邻信息表确定所述待预测点对应的目标莫顿码;其中,所述预设相邻信息表用于对所述待预测点的相邻位置与预设基准点之间的坐标差进行确定;
    根据所述目标莫顿码判断所述待解码点云中是否存在所述待预测点的相邻点;
    若所述待解码点云中存在所述相邻点,则根据所述相邻点的属性重建信息预测所述待预测点的属性预测值。
  19. 根据权利要求18所述的方法,其中,所述基于所述当前莫顿码,根据预设相邻信息表确定所述待预测点对应的目标莫顿码之前,所述方法还包括:
    建立所述待预测点对应的所述预设相邻信息表。
  20. 根据权利要求19所述的方法,其中,所述相邻位置包括:与待预测点共面相邻的共面相邻点,和与待预测点共线相邻的共线相邻点,所述建立所述待预测点对应的所述预设相邻信息表,包括:
    定位所述预设基准点;
    计算所述预设基准点与所述共面相邻点之间的第一坐标差,计算所述预设基准点与所述共线相邻点之间的第二坐标差;
    对所述第一坐标差进行莫顿编码,获得所述共面相邻点对应的共面莫顿码,对所述第二坐标差进行莫顿编码,获得所述共线相邻点对应的共线莫顿码;
    基于所述共面莫顿码和所述共线莫顿码,建立所述待预测点对应的所述预设相邻信息表。
  21. 根据权利要求20所述的方法,其中,所述基于所述当前莫顿码,根据预设相邻信息表确定所述待预测点对应的目标莫顿码,包括:
    从所述预设相邻信息表中读取所述待预测点对应的所述共面莫顿码和所述共线莫顿码;
    对所述共面莫顿码和所述预设基准点的莫顿码进行求和运算,获得第一和值,对所述共线莫顿码和所述预设基准点的莫顿码进行求和运算,获得第二和值;
    将所述第一和值和所述第二和值,确定为所述目标莫顿码。
  22. 根据权利要求20所述的方法,其中,所述基于所述当前莫顿码,根据预设相邻信息表确定所述待预测点对应的目标莫顿码之前,所述方法还包括:
    确定相邻类型;其中,所述相邻类型包括:共面类型和共线类型。
  23. 根据权利要求22所述的方法,其中,所述基于所述当前莫顿码,根据预设相邻信息表确定所述待预测点对应的目标莫顿码,包括:
    若所述相邻类型为所述共面类型,则从所述预设相邻信息表中读取所述待预测点对应的所述共面莫顿码;
    对所述共面莫顿码和所述预设基准点的莫顿码进行求和运算,获得第一和值;
    将所述第一和值确定为所述目标莫顿码。
  24. 根据权利要求22所述的方法,其中,所述基于所述当前莫顿码,根据预设相邻信息表确定所述待预测点对应的目标莫顿码,包括:
    若所述相邻类型为所述共线类型,则从所述预设相邻信息表中读取所述待预测点对应的所述共线莫顿码;
    对所述共线莫顿码和所述预设基准点的莫顿码进行求和运算,获得第二和值;
    将所述第二和值确定为所述目标莫顿码。
  25. 根据权利要求18所述的方法,其中,所述根据所述目标莫顿码判断所述待解码点云中是否存在所述待预测点的相邻点,包括:
    获取所述待解码点云的点云序列集合;
    基于所述目标莫顿码在所述点云序列集合中进行查询处理,获得查询结果;
    若所述查询结果为所述点云序列集合中存在所述目标莫顿码,则判定存在所述相邻点。
  26. 根据权利要求25所述的方法,其中,所述基于所述目标莫顿码在所述点云序列集合中进行查询处理,获得查询结果,包括:
    基于所述目标莫顿码,遍历所述点云序列集合,获得所述查询结果。
  27. 根据权利要求25所述的方法,其中,所述基于所述目标莫顿码在所述点云序列中进行查询处理,获得查询结果,包括:
    基于所述目标莫顿码,按照预设查询算法在所述点云序列集合中查询,获得所述查询结果。
  28. 根据权利要求18所述的方法,其中,所述根据所述相邻点的属性重建信息预测所述待预测点的属性预测值,包括:
    若所述相邻点是与待预测点共面相邻的共面相邻点,则获取所述共面相邻点对应的第一属性重建值;
    计算所述第一属性重建值的第一平均值,并将所述第一平均值确定为所述属性预测值。
  29. 根据权利要求18所述的方法,其中,所述根据所述相邻点的属性重建信息预测所述待预测点的属性预测值,包括:
    若所述相邻点是与待预测点共线相邻的共线相邻点,则获取所述共线相邻点对应的第二属性重建值;
    计算所述第二属性重建值的第二平均值,并将所述第二平均值确定为所述属性预测值。
  30. 根据权利要求18所述的方法,其中,所述根据所述相邻点的属性重建信息预测所述待预测点的属性预测值,包括:
    若所述相邻点是与待预测点共面相邻的共面相邻点,和与待预测点共线相邻的共线相邻点,则获取所述共面相邻点对应的第一属性重建值,和所述共线相邻点对应的第二属性重建值;
    按照预设权重对所述第一属性重建值和所述第二属性重建值进行加权平均计算,获得加权平均值;
    将所述加权平均值确定为所述属性预测值。
  31. 根据权利要求18所述的方法,其中,所述根据所述目标莫顿码判断所述待解码点云中是否存在所述相邻点之后,所述方法还包括:
    若所述待解码点云中不存在所述相邻点,则利用所述当前莫顿码对应的前一个莫顿码预测所述待预测点的属性预测值。
  32. 根据权利要求31所述的方法,其中,所述利用所述当前莫顿码对应的前一个莫顿码预测所述待预测点的属性预测值,包括:
    从所述待解码点云中确定所述前一个莫顿码对应的已重建点;
    将所述已重建点的重建值确定为所述属性预测值。
  33. 根据权利要求18所述的方法,其中,所述根据所述目标莫顿码判断所述待解码点云中是否存在所述相邻点之后,所述根据所述相邻点的属性重建信息预测所述待预测点的属性预测值之前,所述方法还包括:
    从所述待解码点云中确定所述前一个莫顿码对应的已重建点;
    将所述已重建点确定为所述待预测点的所述相邻点。
  34. 一种编码器,所述编码器包括:第一确定部分,第一判断部分,第一预测部分,
    所述第一确定部分,配置为确定待编码点云中的待预测点的当前莫顿码;以及基于所述当前莫顿码,根据预设相邻信息表确定所述待预测点对应的目标莫顿码;其中,所述预设相邻信息表用于对所述待预测点的相邻位置与预设基准点之间的坐标差进行确定;
    所述第一判断部分,配置为根据所述目标莫顿码判断所述待编码点云中是否存在所述待预测点的相邻点;
    所述第一预测部分,配置为若所述待编码点云中存在所述相邻点,则根据所述相邻点的属性重建信息预测所述待预测点的属性预测值。
  35. 一种解码器,所述解码器包括:第二确定部分,第二判断部分,第二预测部分,
    所述第二确定部分,配置为确定待解码点云中的待预测点的当前莫顿码;以及基于所述当前莫顿码,根据预设相邻信息表确定所述待预测点对应的目标莫顿码;其中,所述预设相邻信息表用于对所述待预测点的相邻位置与预设基准点之间的坐标差进行确定;
    所述第二判断部分,配置为根据所述目标莫顿码判断所述待解码点云中是否存在所述待预测点的相邻点;
    所述第二预测部分,配置为若所述待解码点云中存在所述相邻点,则根据所述相邻点的属性重建信息预测所述待预测点的属性预测值。
  36. 一种编码器,所述编码器包括第一处理器、存储有所述第一处理器可执行指令的第一存储器,当所述指令被所述第一处理器执行时,实现如权利要求1-17任一项所述的方法。
  37. 一种解码器,所述解码器包括第二处理器、存储有所述第二处理器可执行指令的第二存储器,当所述指令被所述第二处理器执行时,实现如权利要求18-33任一项所述的方法。
  38. 一种计算机可读存储介质,其上存储有程序,应用于编码器中,所述程序被处理器执行时,实现如权利要求1-17任一项所述的方法。
  39. 一种计算机可读存储介质,其上存储有程序,应用于解码器中,所述程序被处理器执行时,实现如权利要求18-33任一项所述的方法。
PCT/CN2019/122499 2019-12-02 2019-12-02 属性信息的预测方法、编码器、解码器、及存储介质 WO2021108969A1 (zh)

Priority Applications (9)

Application Number Priority Date Filing Date Title
EP19954841.3A EP4072135A4 (en) 2019-12-02 2019-12-02 METHOD FOR PREDICTING ATTRIBUTE INFORMATION, ENCODER, DECODER AND STORAGE MEDIA
JP2022532617A JP7430792B2 (ja) 2019-12-02 2019-12-02 属性情報の予測方法、エンコーダ、デコーダ及び記憶媒体
CN201980102312.4A CN114667732A (zh) 2019-12-02 2019-12-02 属性信息的预测方法、编码器、解码器、及存储介质
CN202210909589.1A CN115190300A (zh) 2019-12-02 2019-12-02 属性信息的预测方法、编码器、解码器、及存储介质
PCT/CN2019/122499 WO2021108969A1 (zh) 2019-12-02 2019-12-02 属性信息的预测方法、编码器、解码器、及存储介质
KR1020227019876A KR20220110502A (ko) 2019-12-02 2019-12-02 속성 정보의 예측 방법, 인코더, 디코더 및 저장매체
US17/805,093 US11704840B2 (en) 2019-12-02 2022-06-02 Attribute information prediction method, encoder, decoder and storage medium
US18/300,484 US20230252684A1 (en) 2019-12-02 2023-04-14 Attribute information prediction method, encoder, decoder and storage medium
JP2024010387A JP2024050705A (ja) 2019-12-02 2024-01-26 属性情報の予測方法、エンコーダ、デコーダ及び記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/122499 WO2021108969A1 (zh) 2019-12-02 2019-12-02 属性信息的预测方法、编码器、解码器、及存储介质

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/805,093 Continuation US11704840B2 (en) 2019-12-02 2022-06-02 Attribute information prediction method, encoder, decoder and storage medium

Publications (1)

Publication Number Publication Date
WO2021108969A1 true WO2021108969A1 (zh) 2021-06-10

Family

ID=76220940

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/122499 WO2021108969A1 (zh) 2019-12-02 2019-12-02 属性信息的预测方法、编码器、解码器、及存储介质

Country Status (6)

Country Link
US (2) US11704840B2 (zh)
EP (1) EP4072135A4 (zh)
JP (2) JP7430792B2 (zh)
KR (1) KR20220110502A (zh)
CN (2) CN114667732A (zh)
WO (1) WO2021108969A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022257978A1 (zh) * 2021-06-11 2022-12-15 维沃移动通信有限公司 点云编码方法、解码方法及装置

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115688004B (zh) * 2022-11-08 2023-09-29 中国民用航空总局第二研究所 一种基于希尔伯特编码的目标属性确定方法、介质及设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108520470A (zh) * 2017-02-28 2018-09-11 百度在线网络技术(北京)有限公司 用于生成用户属性信息的方法和装置
WO2019055772A1 (en) * 2017-09-14 2019-03-21 Apple Inc. COMPRESSION OF CLOUD OF POINTS
CN109815842A (zh) * 2018-12-29 2019-05-28 上海依图网络科技有限公司 一种确定待识别对象的属性信息的方法及装置
CN110312132A (zh) * 2019-03-11 2019-10-08 杭州海康威视数字技术股份有限公司 一种编解码方法、装置及其设备
CN110418135A (zh) * 2019-08-05 2019-11-05 北京大学深圳研究生院 一种基于邻居的权重优化的点云帧内预测方法及设备

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201303540D0 (en) * 2013-02-27 2013-04-10 Arithmetica Ltd Image processing
US10535161B2 (en) * 2017-11-09 2020-01-14 Samsung Electronics Co., Ltd. Point cloud compression using non-orthogonal projection
SG11202009891QA (en) 2018-04-19 2020-11-27 Panasonic Ip Corp America Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108520470A (zh) * 2017-02-28 2018-09-11 百度在线网络技术(北京)有限公司 用于生成用户属性信息的方法和装置
WO2019055772A1 (en) * 2017-09-14 2019-03-21 Apple Inc. COMPRESSION OF CLOUD OF POINTS
CN109815842A (zh) * 2018-12-29 2019-05-28 上海依图网络科技有限公司 一种确定待识别对象的属性信息的方法及装置
CN110312132A (zh) * 2019-03-11 2019-10-08 杭州海康威视数字技术股份有限公司 一种编解码方法、装置及其设备
CN110418135A (zh) * 2019-08-05 2019-11-05 北京大学深圳研究生院 一种基于邻居的权重优化的点云帧内预测方法及设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP4072135A4 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022257978A1 (zh) * 2021-06-11 2022-12-15 维沃移动通信有限公司 点云编码方法、解码方法及装置

Also Published As

Publication number Publication date
US11704840B2 (en) 2023-07-18
JP7430792B2 (ja) 2024-02-13
EP4072135A4 (en) 2023-06-21
US20220292723A1 (en) 2022-09-15
KR20220110502A (ko) 2022-08-08
US20230252684A1 (en) 2023-08-10
JP2024050705A (ja) 2024-04-10
CN115190300A (zh) 2022-10-14
JP2023510081A (ja) 2023-03-13
CN114667732A (zh) 2022-06-24
EP4072135A1 (en) 2022-10-12

Similar Documents

Publication Publication Date Title
JP6732152B1 (ja) 点群エンコーダ
JP7330306B2 (ja) 変換方法、逆変換方法、エンコーダ、デコーダ及び記憶媒体
CN112218079B (zh) 一种基于空间顺序的点云分层方法、点云预测方法及设备
KR20220127323A (ko) 슬라이스별 트리수프 노드 크기
CN110572655A (zh) 一种基于邻居权重的参数选取和传递的点云属性编码和解码的方法及设备
JP7386337B2 (ja) 分割方法、符号器、復号器及びコンピュータ記憶媒体
JP2024050705A (ja) 属性情報の予測方法、エンコーダ、デコーダ及び記憶媒体
WO2022042538A1 (zh) 一种基于块的点云几何帧间预测方法和解码方法
CN115606188A (zh) 一种点云编解码方法、编码器、解码器及存储介质
CN108989799B (zh) 一种编码单元参考帧的选择方法、装置及电子设备
WO2021062772A1 (zh) 预测方法、编码器、解码器及计算机存储介质
WO2022022013A1 (zh) 模式选择方法、装置、计算机可读存储介质及电子设备
JP2023523272A (ja) 最近傍検索方法、エンコーダ、デコーダ、及び記憶媒体
WO2021062732A1 (zh) 变换方法、逆变换方法、编码器、解码器及存储介质
WO2022120594A1 (zh) 点云编解码方法、编码器、解码器及计算机存储介质
CN114730474A (zh) 点云处理方法、编码器、解码器及存储介质
KR20220157490A (ko) 인트라 예측 방법, 장치, 인코더, 디코더 및 저장 매체
WO2022217611A1 (zh) 编解码方法及相关设备、存储介质
US20220343550A1 (en) Partitioning method, encoder, decoder and computer storage medium
WO2021139796A1 (zh) 莫顿码的构建方法、编码器、解码器、及存储介质
CN117581549A (zh) 帧内预测、编解码方法及装置、编解码器、设备、介质
CN115412715A (zh) 一种点云属性信息的预测编解码方法及装置
JP2005301781A (ja) 画像作成方法,画像符号化方法,画像復号方法,画像作成装置,画像符号化装置,画像復号装置,画像作成プログラム,画像符号化プログラム,画像復号プログラムおよびそれらのプログラム記録媒体

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022532617

Country of ref document: JP

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 20227019876

Country of ref document: KR

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2019954841

Country of ref document: EP

Effective date: 20220704