WO2021062736A1 - 划分方法、编码器、解码器以及计算机存储介质 - Google Patents
划分方法、编码器、解码器以及计算机存储介质 Download PDFInfo
- Publication number
- WO2021062736A1 WO2021062736A1 PCT/CN2019/109653 CN2019109653W WO2021062736A1 WO 2021062736 A1 WO2021062736 A1 WO 2021062736A1 CN 2019109653 W CN2019109653 W CN 2019109653W WO 2021062736 A1 WO2021062736 A1 WO 2021062736A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- point cloud
- iteration
- points
- input point
- equal
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/40—Tree coding, e.g. quadtree, octree
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/005—Tree description, e.g. octree, quadtree
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/001—Model-based coding, e.g. wire frame
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/597—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
Definitions
- the embodiments of this application relate to the level of detail (LOD) division technology in the coding and decoding of Geometry-based Point Cloud Compression (G-PCC), and in particular to a division method, encoder, Decoder and computer storage medium.
- LOD level of detail
- G-PCC Geometry-based Point Cloud Compression
- the geometric information of the point cloud and the attribute information corresponding to each point cloud are encoded separately.
- the geometric encoding is performed first, and after the geometric encoding is completed, the geometric information is reconstructed; currently, Attribute coding is mainly for color information.
- Attribute coding is mainly for color information.
- attribute coding first convert the color information from RGB color space to YUV color space, and then use the reconstructed geometry information to recolor the point cloud, so that the uncoded attribute information and the reconstructed geometry Corresponding information.
- color information coding there are mainly two transformation methods. One is the promotion transformation based on LOD division.
- the LOD division is mainly divided into LOD division based on distance and LOD division based on fixed sampling rate; the second is to directly perform regional autonomy on attributes.
- Adaptive hierarchical transformation (Region Adaptive Hierarchal Transform, RAHT).
- the method of searching within a range of the Morton code corresponding to the current point is used on the basis of the LOD division based on distance. Divide the LOD.
- the LOD division structure needs to be used to predict the attributes of the neighbor nodes.
- the LOD layer obtained by the existing LOD division method leads to the prediction of the neighbor nodes The accuracy is low.
- the embodiments of the present application provide a partitioning method, an encoder, a decoder, and a computer storage medium, which can improve the prediction accuracy of neighbor nodes and increase the codec rate.
- an embodiment of the present application provides a division method, and the method includes:
- the first LOD layer to the i-1th LOD layer are determined as the LOD layer after the point cloud to be divided is divided.
- an encoder in a second aspect, provides an encoder, and the encoder includes:
- the first calculation module is configured to obtain the point cloud to be divided, and calculate the Morton code of the point cloud to be divided;
- the first determining module is configured to determine the point cloud to be divided as the input point cloud of the first iteration
- the first judging module is configured to judge whether the number of points in the input point cloud of the i-th iteration is equal to 0 when the i-th iteration is performed; where i is a positive integer whose initial value is equal to 1;
- the first right shift module is configured to shift the Morton code of the input point cloud of the i-th iteration to the right by K bits when the number of points in the input point cloud of the i-th iteration is not equal to 0, where , K is a positive integer;
- the first selection module is configured to select a point from the points with the same value of the Morton code shifted by K bits to the right;
- the first division module is configured to use the selected points to form the i-th detailed division LOD layer, and determine the remaining points in the input point cloud of the i-th iteration except for the selected points as the i+1-th
- the iterative input point cloud, i is updated to i+1, and the first judgment module is returned to execute when the i-th iteration is performed, it is judged whether the number of points in the i-th iteration of the input point cloud is equal to 0;
- the second determining module is configured to determine the first LOD layer to the i-1th LOD layer as the to-be-divided point cloud division when the number of points in the input point cloud of the i-th iteration is equal to 0 After the LOD layer.
- an embodiment of the present application provides a decoder, and the decoder includes:
- the second calculation module is configured to obtain the point cloud to be divided, and calculate the Morton code of the point cloud to be divided;
- the third determining module is configured to determine the point cloud to be divided as the input point cloud of the first iteration
- the second judgment module is configured to judge whether the number of points in the input point cloud of the i-th iteration is equal to 0 when the i-th iteration is performed; where i is a positive integer whose initial value is equal to 1;
- the second shift right module is configured to shift the Morton code of the input point cloud of the i-th iteration to the right by K bits when the number of points in the input point cloud of the i-th iteration is not equal to 0; , K is a positive integer;
- the second selection module is configured to select a point from the points with the same value of the Morton code shifted by K bits to the right;
- the second division module is configured to use the selected points to form the i-th detailed division LOD layer, and determine the remaining points in the input point cloud of the i-th iteration except for the selected points as the i+1-th
- the iterative input point cloud, i is updated to i+1, and the second judgment module is returned to execute when the i-th iteration is performed, it is judged whether the number of points in the i-th iteration of the input point cloud is equal to 0;
- the fourth determining module is configured to determine the first LOD layer to the i-1th LOD layer as the to-be-divided point cloud division when the number of points in the input point cloud of the i-th iteration is equal to 0 After the LOD layer.
- an encoder in a fourth aspect, provides an encoder, and the encoder includes:
- an encoder in a fifth aspect, provides an encoder, and the encoder includes:
- an embodiment of the present application provides a computer-readable storage medium, in which executable instructions are stored, and when the executable instructions are executed by one or more processors, the processors execute one or more of the above The division method described in multiple embodiments.
- the embodiments of the present application provide a dividing method, an encoder, a decoder, and a computer storage medium.
- the method may include: obtaining a point cloud to be divided, calculating the Morton code of the point cloud to be divided, and determining the point cloud to be divided as The input point cloud of the first iteration, when the i-th iteration is performed, determine whether the number of points in the i-th iteration of the input point cloud is equal to 0, where i is a positive integer with the initial value equal to 1, and when the i-th iteration When the number of points in the input point cloud of the second iteration is not equal to 0, the Morton code of the input point cloud of the i-th iteration is shifted to the right by K bits, where K is a positive integer, and the Morton code is shifted from the right by K bits.
- a point uses the selected points to form the i-th detail to divide the LOD layer, and determine the remaining points in the i-th iteration of the input point cloud except for the selected points as the i+
- the input point cloud of 1 iteration, i is updated to i+1, and the execution is returned.
- the i iteration it is judged whether the number of points in the input point cloud of the i iteration is equal to 0.
- the first LOD layer to the i-1th LOD layer are determined as the LOD layer after the point cloud to be divided; that is, in the embodiment of the present application, through iteration
- the Morton code of each iteration of the input point cloud is shifted to the right by K bits, and then a point is selected from the points with the same value of the Morton code after shifting to the right by K bits, and the selected points are combined into this iteration
- the formed LOD layer, through this division method because the points that are adjacent to the Morton code are often in adjacent positions in the geometric space, the Morton code is shifted to the right, and the points are selected based on the Morton code after the right shift.
- the distribution of point clouds and the spatial distance between point clouds can be comprehensively considered, and the resulting LOD layer division is based on the distribution of point clouds and the spatial distance between point clouds. In this way, the accuracy of neighbor node prediction based on the LOD layer is improved, thereby improving the coding and decoding efficiency.
- Figure 1 is a flow chart of G-PCC encoding
- Figure 2 is a schematic diagram of the process of dividing LOD based on distance
- Figure 3 is a schematic diagram of the process of dividing LOD based on Morton order
- FIG. 4 is a schematic flowchart of an optional division method provided by an embodiment of this application.
- FIG. 5 is a schematic flowchart of an example of an optional division method provided by an embodiment of this application.
- FIG. 6 is a schematic structural diagram of an optional encoder provided by an embodiment of the application.
- FIG. 7 is a schematic structural diagram of an optional decoder provided by an embodiment of the application.
- FIG. 8 is a schematic structural diagram of another optional encoder provided by an embodiment of the application.
- FIG. 9 is a schematic structural diagram of another optional decoder provided by an embodiment of the application.
- each slice is encoded independently.
- Figure 1 is a flow chart of G-PCC encoding. As shown in Figure 1, it is applied in a point cloud encoder.
- the point cloud data For the point cloud data to be encoded, the point cloud data is divided into multiple slices first. In each slice, the geometric information of the point cloud and the attribute information corresponding to each point cloud are coded separately.
- the geometric information In the geometric encoding process, the geometric information is coordinated to convert the point cloud into a bounding box (bounding box), and then quantized. This step of quantization mainly plays the role of scaling. Due to the quantization rounding, a part of the The geometric information of the point cloud is the same, so it is determined whether to remove the duplicate points based on the parameters.
- the process of quantifying and removing the duplicate points is also called the voxelization process.
- the bounding box is divided into eight sub-cubes, and the non-empty (including points in the point cloud) sub-cubes are continued to be divided into eight equal parts until the leaf knots are obtained.
- the point is a 1x1x1 unit cube
- the division is stopped, and the points in the leaf nodes are arithmetic coded to generate a binary geometric bit stream, that is, a geometric code stream.
- octree division In the process of encoding geometric information based on trisoup (triangle soup, triangular face set), octree division must also be performed first, but different from the geometric information encoding based on octree, the trisoup does not need to step by step the point cloud Divide into a unit cube with a side length of 1x1x1, but divide it into a block (sub-block) when the side length is W, and stop dividing.
- the geometric coding is completed, and after the geometric information is reconstructed, color conversion is performed, and the color information (that is, the attribute information) is converted from the RGB color space to the YUV color space. Then, the reconstructed geometric information is used to recolor the point cloud, so that the uncoded attribute information corresponds to the reconstructed geometric information.
- the color information coding process there are mainly two transformation methods, one is the distance-based lifting transformation that relies on the LOD division, and the other is the RAHT transformation. Both methods will convert the color information from the spatial domain to the frequency domain. The high-frequency coefficients and low-frequency coefficients are obtained by transformation, and finally the coefficients are quantized (ie, quantized coefficients).
- the geometrically coded data after octree division and surface fitting and the quantized coefficient processing attribute coded data are slice-combined, and then coded sequentially
- the vertex coordinates (that is, arithmetic coding) of each block generate a binary attribute bit stream, that is, the attribute code stream.
- a distance-based method is used to divide the LOD for the Category3 sequence point cloud when performing attribute transformation.
- the method of dividing LOD based on distance is used in TMC3V0 encoder and TMC13 attribute transformation lifting.
- the method of dividing LOD based on distance is also added to the predcting attribute transformation in TMC13, that is, LOD division is applied to point cloud attribute transformation Predicting and lifting.
- the LOD division process is after the geometric reconstruction of the point cloud. At this time, the geometric coordinate information of the point cloud is known. The process of dividing the LOD is applied to the encoding end and the decoding end of the point cloud at the same time.
- the specific process is as follows:
- the algorithm process is to divide the LOD layer through continuous iteration .
- the generation process of the refinement level R l corresponding to the lth iteration is as follows:
- the l-th LOD set that is, LOD l is obtained by merging the points in the refinement levels R 0 , R 1 , ..., R 1;
- Figure 2 is a schematic diagram of the process of dividing LOD based on distance.
- the point cloud to be divided this time includes points P0, P1, P2, P3, P4, P5, P6, P7, P8 and P9, among which the original point cloud sequence Are: P0, P1, P2, P3, P4, P5, P6, P7, P8 and P9, the LOD0 obtained by the above-mentioned method of dividing the LOD based on the distance is P4, P5, P0 and P1, and the LOD1 is P4, P5, P0, P1, P3, P2 and P6, LOD2 are P4, P5, P0, P1, P3, P2, P6, P7, P8 and P9.
- the related technology also mentions a solution to reduce the computational complexity of LOD generation, which is mainly based on Morton order to divide LOD.
- Morton code realizes one-dimensional and two-dimensional (or multi-dimensional) conversion, which is stored through cross storage. Two digits produce one number. Compared with the original search for all the points, the calculation complexity of LOD is much reduced.
- the main steps are as follows:
- Morton code M is to start from the highest digit of x, y, z, and alternately arrange x l , y l , z l to the lowest digit in turn.
- the calculation formula of M is as follows:
- D0 (representing the threshold of the initial distance) and ⁇ (representing the ratio of the distance threshold when the adjacent LOD layer is divided) are user-defined initial parameters, and ⁇ >1.
- I denote the index of all points in the point cloud.
- the point in LOD k will find the nearest neighbor from LOD 0 to LOD k-1 , that is, the point closest to it.
- the specific process of the algorithm is as follows:
- O(k) and L(k) are initialized to the empty set
- Each iteration is traversed according to the index order of the save points in I.
- Each traversal will calculate the geometric distance from the current point to all points in a certain range in the set O(k).
- search for the first index greater than the Morton code point corresponding to the current point in the set O(k) and then search in a search range SR1 of the index (SR1 Represents the search range based on Morton code, generally 8,16,64). If a point whose distance from the current point is less than the threshold d l is found in this range, the current point is added to the set L(k), otherwise it is added to the set O(k);
- Figure 3 is a schematic diagram of the process of dividing LOD based on Morton order.
- the point cloud to be divided this time includes points P0, P1, P2, P3, P4, P5, P6, P7, P8 and P9, among which, the original point The order of the clouds is: P0, P1, P2, P3, P4, P5, P6, P7, P8 and P9.
- the points arranged in ascending order based on Morton order are: P4, P1, P9, P5, P0, P6, P8, P2, P7 and P3, the LOD0 obtained by the above method of dividing the LOD based on the Morton order is P4, P5, P0 and P1, LOD1 is P4, P5, P0, P1, P3, P2 and P6, and LOD2 is P4, P5, P0, P1, P3, P2, P6, P7, P8 and P9.
- the method of dividing LOD based on the distance uses the method of searching within a range of the Morton code corresponding to the current point, calculating the spatial geometric distance from the point in the range to the current point and comparing it with the threshold, until all points reach the current point When the distance of the point is greater than the threshold, the point is added to the current LOD layer, otherwise it will be divided into the next layer. Based on the test data obtained by the test, the time used by the method of dividing the LOD based on the distance occupies about 70% to 80% of the overall coding time. Obviously, the computational complexity is relatively high.
- the point cloud is divided into LOD based on distance. Because there is a great correlation between the attributes of adjacent points in space, the LOD-based structure can be used to predict the attributes of neighbor nodes, so as to achieve the purpose of removing attribute redundancy between adjacent points. Nevertheless, because different point clouds have different spatial distributions, the object densities of different point clouds are different. Therefore, in the process of dividing the LOD based on distance, the prior art is based on the uniform distribution of point clouds (equivalent to the same divided distance threshold). ) The neighbor points obtained by the search are not accurate enough, which leads to a large prediction residual and low coding efficiency.
- the method of searching within a range of the Morton code corresponding to the current point is used on the basis of the LOD division based on distance.
- Divide LOD the LOD division structure needs to be used to predict the attributes of neighbor nodes. Because different point clouds have different spatial distributions, different point clouds have different object densities. Therefore, the LOD division structure obtained by the above division method is not accurate enough to predict neighbor nodes, which leads to large prediction residuals and affects the efficiency of coding and decoding. It can be seen that the LOD layer obtained by the existing LOD division method As a result, the prediction accuracy of neighbor nodes is low.
- FIG. 4 is an optional division provided by an embodiment of this application.
- the division method provided by the embodiment of the application is to improve the LOD generation process in the above-mentioned lifting and predicting attribute transformation, and is used in the encoder and the decoder. This method uses the improved technology to perform the LOD structure before performing the lifting or predicting transformation.
- the division is applied to the block diagram of LOD generated in Figure 1.
- the Morton code of the point cloud to be divided is first calculated.
- the Morton code can be used to know the spatial position relationship between points, which is beneficial to the completion of the division.
- the neighbor nodes are predicted after the LOD layer.
- S402 Determine the point cloud to be divided as the input point cloud of the first iteration
- the point cloud to be divided is obtained, where the point cloud to be divided includes at least two points, for example, 10 points.
- the point cloud to be divided is determined as the input point cloud of the first iteration.
- the method may include :
- Each group of point clouds is determined as the input point cloud of the first iteration.
- the number of iterations is represented by i, and i is a positive integer whose initial value is equal to 1;
- K is a positive integer
- the value of K here can be a fixed value obtained through training, or a value obtained through any of the following methods, which is not specifically limited in the embodiment of the present application.
- the method may further include:
- the value of K is determined.
- the value of K is determined according to the distribution of the point cloud to be divided, so that in each iteration, the Morton code is shifted to the right by K bits, so that the spatial distribution of the point cloud is taken into account when the Morton code is shifted to the right. , Can achieve better forecasting effect.
- the method may further include:
- the K value of each iteration can be determined according to the number of points in the input point cloud of each iteration and the distribution of the input point cloud of each iteration, so that the The right shift number of Morton code in each iteration takes into account the number of point clouds and the spatial distribution of point clouds, which can achieve a better prediction effect.
- S405 may include:
- the first point sorted is selected.
- the Morton codes are sorted in the order from small to large, and then at the point where the values of the Morton codes shifted by K bits to the right are equal, at least one set of Morton codes shifted to the right by K bits are equal in value Then select the first point from each group, that is, the point that is the first in the original point cloud order among the points with the same Morton code value shifted to the right by K bits.
- S405 may include:
- the point closest to the centroid among the points with the same value of the Morton code shifted to the right by K is determined as the selected point.
- centroid is calculated from the three-dimensional coordinates of each point in the input point cloud of this iteration. After the centroid is obtained , And then calculate the point closest to the centroid among the points with the same value of the Morton code shifted by K bits to the right, and select this point.
- the method may further include :
- a number of selected points are selected from the points with the same value of the Morton code shifted by K bits to the right.
- more than one point can be selected from the points with the same value of the Morton code shifted by K bits to the right, and the corresponding value can be determined according to the number of points with the value of the Morton code shifted to the right by K bits.
- the number of points with the same value of Morton code after shifting K bits to the right is 10, 8, 6, 4, etc., to determine the corresponding selected number can be based on Morton code
- the number of points with the same value is determined. For example, if the number of points with the same value of the Morton code after shifting K bits to the right is 10, the corresponding selected number is 5, and for shifting K bits to the right
- the number of points with the same value of the Morton code is 8, and the corresponding selected number is 4.
- the number of points with the same value is 6.
- the corresponding number of selections is 3, the number of points with the same value of Morton code shifted by K bits to the right is 4, and the corresponding selection number is 2, which can be determined according to the proportional relationship. Select the number.
- the selected number select a number of points from the points with the same value of the Morton code shifted to the right by K bits.
- the selected points can be selected arbitrarily, or they can be selected in a specified way Select a few points, here, the embodiment of the application does not specifically limit this.
- the method may further include :
- a point is selected every second preset threshold according to the sorting result.
- each group of points with equal values of Morton code shifted by K bits to the right is also arranged according to the sorting result, here, one point is selected according to every second preset threshold to obtain the selected points.
- the above-mentioned second preset threshold is a value set according to requirements.
- S406 Use the selected points to form the i-th detailed LOD layer, and determine the remaining points in the i-th iteration input point cloud except for the selected points as the i+1-th iteration input point cloud, i Update to i+1, return to execute S403;
- the selected points are used to form the LOD layer of this iteration, that is, the i-th LOD layer, so that after this iteration, some points in the input point cloud of this iteration are divided into the LOD layer.
- the remaining points in the input point cloud of this iteration except for the selected points are determined as the input point cloud of the i+1th iteration, i is updated to i+1, and S403 is executed again.
- the adjacent points in space can be found.
- the LOD layer from One or more points are selected from each group of adjacent points, so that the spatial distribution between the point clouds considered by the divided LOD layer is beneficial to improve the prediction accuracy of neighbor nodes.
- the iteration can be ended, and the obtained first LOD layer to the i-th -1 LOD layer is used as the LOD layer after the point cloud to be divided is divided.
- the i-th detailed division LOD layer is formed by using the selected points, and the i-th iteration The remaining points in the input point cloud except the selected points are determined to be the input point cloud of the i+1th iteration.
- the method may also include:
- the divided LOD layer, the first LOD layer to the i-1th LOD layer are determined as: the LOD layer after the point cloud to be divided is divided.
- the algorithm for dividing the LOD based on the distance or the LOD based on the fixed sampling rate is divided to obtain the LOD layer; here, the embodiment of the present application does not specifically limit this.
- the preset algorithm for dividing LOD based on distance can be called , Or call the preset algorithm of dividing the LOD based on a fixed sampling rate to divide the input point cloud of the i-th iteration to obtain the LOD layer, and finally, the first LOD layer obtained before to the i-1th LOD layer , And the divided LOD layer is used as the LOD layer after dividing the point cloud to be divided.
- FIG. 5 is a schematic flowchart of an example of an optional division method provided by an embodiment of the application. As shown in FIG. 5, the division method can be applied to an encoder or a decoder. This example uses Taking the encoder as an example, the division method may include:
- each point is represented as P[i]
- the Morton codes corresponding to the points in the adjacent positions in the space will be equal, because the points that are adjacent to the Morton code In geometric space, it is often located in adjacent positions. It is precisely this feature of Morton code that shifts the Morton code corresponding to all points in the point cloud to be coded to the right by K bits, and then moves the adjacent points in the space. gather together;
- the points with the same value of Morton code shifted by K bits obtained in S502 are sampled, and one point is selected for each iteration of the gathered point set, and the attribute of the predicted point is used to predict the point.
- the attribute of the point is based on the weighted average of the spatial distance to obtain the reconstructed attribute value of the predicted point.
- the attribute residual of the predicted point is obtained by using the reconstructed attribute value and the original attribute value, and the attribute of the neighbor point is obtained by using the reconstructed attribute value and the predicted residual.
- Prediction after each sampling, a prediction will be made, and then a final prediction will be obtained by combining each prediction, so as to predict the attributes of the remaining neighbor points in the point cloud to be coded;
- the sampling points obtained in S503 are regarded as the points in the current LOD layer, and the other remaining points are regarded as the points higher than the current LOD layer; in practical applications, here, the Morton code after K bits can be shifted to the right
- the first point among the points with equal values is used as the sampling point.
- S505 Determine whether the remaining points are all traversed or whether they are all divided; if so, end the division of the LOD layer, otherwise return to execute S502 to continue the division;
- the right shift is performed by K bits, and the above S502 to S505 are repeated until all the LODs are divided or all the points are traversed.
- the LOD is divided by the point cloud spatial distribution and the point cloud spatial distance
- the LOD is divided by Morton code right shift. Not only can the distance of the geometric space be considered, but also the distribution of the point cloud will be considered comprehensively.
- the number of sampling points will be reduced in the denser point cloud, and the number of sampling points will be increased in the sparser place. In the sparse part, due to the long spatial distance between the points, the attribute residuals between adjacent points will generally be large when predicting.
- the Morton code is shifted to the right by a certain number of digits to obtain different numbers of point sets, and then sampling points are used in each point set to predict the attributes of neighbor points.
- the embodiments of the present application can improve the reconstruction quality of the attribute part, and can reduce the coding and decoding time and calculation complexity of the attribute under the premise that the performance is not basically affected, as shown in Table 1 below:
- BD-rate is a parameter used to measure the quality of performance. When BD-rate is negative, it means performance becomes better. On this basis, the greater the absolute value of BD-rate, the greater the performance gain.
- the division method provided by the embodiment reduces the time required to divide the LOD, thereby reducing the coding and decoding time.
- the embodiment of the application provides a method for dividing.
- the method may include: obtaining the point cloud to be divided, calculating the Morton code of the point cloud to be divided, determining the point cloud to be divided as the input point cloud of the first iteration, when When performing the i-th iteration, judge whether the number of points in the input point cloud of the i-th iteration is equal to 0, where i is a positive integer with the initial value equal to 1, and when the number of points in the input point cloud of the i-th iteration is When the number is not equal to 0, move the Morton code entered into the point cloud in the i-th iteration to the right by K bits, where K is a positive integer, select a point from the point where the value of the Morton code is equal after shifting by K bits to the right , Use the selected points to form the i-th detail division LOD layer, and determine the remaining points in the i-th iteration input point cloud except for the selected points as the i+1-th iteration input
- FIG. 6 is a schematic structural diagram of an optional encoder provided by an embodiment of the present application. As shown in FIG. 6, the encoder may include:
- the first calculation module 61 is configured to obtain the point cloud to be divided, and calculate the Morton code of the point cloud to be divided;
- the first determining module 62 is configured to determine the point cloud to be divided as the input point cloud of the first iteration
- the first judging module 63 is configured to judge whether the number of points in the input point cloud of the i-th iteration is equal to 0 when the i-th iteration is performed; where i is a positive integer whose initial value is equal to 1;
- the first right shift module 64 is configured to shift the Morton code of the input point cloud of the i-th iteration to the right by K bits when the number of points in the input point cloud of the i-th iteration is not equal to 0; where K is Positive integer
- the first selection module 65 is configured to select a point from the points with the same value of the Morton code shifted by K bits to the right;
- the first division module 66 is configured to use the selected points to form the i-th detailed division LOD layer, and determine the remaining points in the i-th iteration of the input point cloud except for the selected points as the i+1-th iteration
- the input point cloud of i is updated to i+1, and the first judgment module 63 is returned to execute when the i-th iteration is performed, it is judged whether the number of points in the input point cloud of the i-th iteration is equal to 0;
- the second determining module 67 is configured to determine the first LOD layer to the i-1th LOD layer as the LOD after the point cloud to be divided is divided when the number of points in the input point cloud of the i-th iteration is equal to 0 Floor.
- the first determining module 62 may also be configured to:
- the first determining module 62 may also be configured to:
- the Morton code of the input point cloud of the i-th iteration is shifted to the right by K bits, according to the mid-point of the input point cloud of the i-th iteration
- the number of and the distribution of the input point cloud of the i-th iteration determine the value of K.
- the encoder can also be configured as:
- the divided LOD layer, the first LOD layer to the i-1th LOD layer are determined as: the LOD layer after the point cloud to be divided is divided.
- the first selection module 65 may be specifically configured as:
- the first point sorted is selected.
- the first selection module 65 may be specifically configured as:
- the point closest to the centroid among the points with the same value of the Morton code shifted to the right by K is determined as the selected point.
- the first selection module 65 may be specifically configured as:
- a number of selected points are selected from the points with the same value of the Morton code shifted by K bits to the right.
- the first selection module 65 may be specifically configured as:
- a point is selected every second preset threshold according to the sorting result.
- the first determining module 62 may also be configured to:
- Each group of point clouds is determined as the input point cloud of the first iteration.
- FIG. 7 is a schematic structural diagram of an optional decoder provided in an embodiment of the application. As shown in FIG. 7, the decoder may include:
- the second calculation module 71 is configured to obtain the point cloud to be divided, and calculate the Morton code of the point cloud to be divided;
- the third determining module 72 is configured to determine the point cloud to be divided as the input point cloud of the first iteration
- the second judging module 73 is configured to judge whether the number of points in the input point cloud of the i-th iteration is equal to 0 when the i-th iteration is performed; where i is a positive integer whose initial value is equal to 1;
- the second right shift module 74 is configured to shift the Morton code of the input point cloud of the i-th iteration to the right by K bits when the number of points in the input point cloud of the i-th iteration is not equal to 0; where K is Positive integer
- the second selection module 75 is configured to select a point from the points with the same value of the Morton code shifted by K bits to the right;
- the second division module 76 is configured to use the selected points to form the i-th detailed division LOD layer, and determine the remaining points in the i-th iteration of the input point cloud except for the selected points as the i+1-th iteration
- the input point cloud of i is updated to i+1, and the first judgment module 63 is returned to execute when the i-th iteration is performed, it is judged whether the number of points in the input point cloud of the i-th iteration is equal to 0;
- the fourth determining module 77 is configured to determine the first LOD layer to the i-1th LOD layer as the LOD after the point cloud to be divided is divided when the number of points in the input point cloud of the i-th iteration is equal to 0 Floor.
- the third determining module 72 may also be configured as:
- the third determining module 72 may also be configured to:
- the Morton code of the input point cloud of the i-th iteration is shifted to the right by K bits, according to the mid-point of the input point cloud of the i-th iteration
- the number of and the distribution of the input point cloud of the i-th iteration determine the value of K.
- the decoder can also be configured as:
- the divided LOD layer, the first LOD layer to the i-1th LOD layer are determined as: the LOD layer after the point cloud to be divided is divided.
- the second selection module 75 may be specifically configured as:
- the first point sorted is selected.
- the second selection module 75 may be specifically configured as:
- the point closest to the centroid among the points with the same value of the Morton code shifted to the right by K is determined as the selected point.
- the second selection module 75 may be specifically configured as:
- a number of selected points are selected from the points with the same value of the Morton code shifted by K bits to the right.
- the second selection module 75 may be specifically configured as:
- a point is selected every second preset threshold according to the sorting result.
- the third determining module 72 may also be configured as:
- Each group of point clouds is determined as the input point cloud of the first iteration.
- FIG. 8 is a schematic structural diagram of another optional encoder proposed in an embodiment of the application.
- the encoder 800 proposed in an embodiment of the application may further include a processor 81 and a processor 81 stored therein.
- the storage medium 82 relies on the processor 81 to perform operations through the communication bus 83.
- the instructions are executed by the processor 81, the division method described in one or more embodiments is executed.
- the various components in the encoder 800 are coupled together through the communication bus 83.
- the communication bus 83 is used to implement connection and communication between these components.
- the communication bus 83 also includes a power bus, a control bus, and a status signal bus.
- various buses are marked as the communication bus 83 in FIG. 8.
- FIG. 9 is a schematic structural diagram of another optional decoder proposed in an embodiment of the application.
- the decoder 900 proposed in an embodiment of the present application may further include a processor 91 and a processor 91 stored therein.
- the storage medium 92 relies on the processor 91 to perform operations through the communication bus 93.
- the instructions are executed by the processor 91, the division method described in one or more embodiments is executed.
- the various components in the decoder 900 are coupled together through the communication bus 93.
- the communication bus 93 is used to implement connection and communication between these components.
- the communication bus 93 also includes a power bus, a control bus, and a status signal bus.
- various buses are marked as the communication bus 93 in FIG. 9.
- An embodiment of the present application provides a computer storage medium that stores executable instructions.
- the processor executes the instructions described in the one or more embodiments above. Division method.
- the memory in the embodiments of the present application may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memory.
- the non-volatile memory can be read-only memory (Read-Only Memory, ROM), programmable read-only memory (Programmable ROM, PROM), erasable programmable read-only memory (Erasable PROM, EPROM), and electrically available Erase programmable read-only memory (Electrically EPROM, EEPROM) or flash memory.
- the volatile memory may be random access memory (Random Access Memory, RAM), which is used as an external cache.
- RAM static random access memory
- DRAM dynamic random access memory
- DRAM synchronous dynamic random access memory
- DDRSDRAM Double Data Rate Synchronous Dynamic Random Access Memory
- Enhanced SDRAM, ESDRAM Synchronous Link Dynamic Random Access Memory
- Synchlink DRAM Synchronous Link Dynamic Random Access Memory
- DRRAM Direct Rambus RAM
- the processor may be an integrated circuit chip with signal processing capabilities.
- each step of the above method can be completed by an integrated logic circuit of hardware in the processor or instructions in the form of software.
- the above-mentioned processor may be a general-purpose processor, a digital signal processor (Digital Signal Processor, DSP), an application specific integrated circuit (ASIC), a ready-made programmable gate array (Field Programmable Gate Array, FPGA) or other Programming logic devices, discrete gates or transistor logic devices, discrete hardware components.
- DSP Digital Signal Processor
- ASIC application specific integrated circuit
- FPGA ready-made programmable gate array
- the methods, steps, and logical block diagrams disclosed in the embodiments of the present application can be implemented or executed.
- the general-purpose processor may be a microprocessor or the processor may also be any conventional processor or the like.
- the steps of the method disclosed in the embodiments of the present application can be directly embodied as being executed and completed by a hardware decoding processor, or executed and completed by a combination of hardware and software modules in the decoding processor.
- the software module can be located in a mature storage medium in the field, such as random access memory, flash memory, read-only memory, programmable read-only memory, or electrically erasable programmable memory, registers.
- the storage medium is located in the memory, and the processor reads the information in the memory and completes the steps of the above method in combination with its hardware.
- the embodiments described herein can be implemented by hardware, software, firmware, middleware, microcode, or a combination thereof.
- the processing unit can be implemented in one or more application specific integrated circuits (ASIC), digital signal processor (Digital Signal Processing, DSP), digital signal processing equipment (DSP Device, DSPD), programmable Logic Device (Programmable Logic Device, PLD), Field-Programmable Gate Array (Field-Programmable Gate Array, FPGA), general-purpose processors, controllers, microcontrollers, microprocessors, and others for performing the functions described in this application Electronic unit or its combination.
- ASIC application specific integrated circuits
- DSP Digital Signal Processing
- DSP Device digital signal processing equipment
- PLD programmable Logic Device
- PLD Field-Programmable Gate Array
- FPGA Field-Programmable Gate Array
- the technology described herein can be implemented by modules (such as procedures, functions, etc.) that perform the functions described herein.
- the software codes can be stored in the memory and executed by the processor.
- the memory can be implemented in the processor or external to the processor.
- the technical solution of this application essentially or the part that contributes to the existing technology can be embodied in the form of a software product, and the computer software product is stored in a storage medium (such as ROM/RAM, magnetic disk, The optical disc) includes several instructions to enable a terminal (which may be a mobile phone, a computer, a server, or a network device, etc.) to execute the method described in each embodiment of the present application.
- a terminal which may be a mobile phone, a computer, a server, or a network device, etc.
- the embodiment of the application provides a dividing method, an encoder, a decoder, and a computer storage medium to obtain a point cloud to be divided, calculate the Morton code of the point cloud to be divided, and determine the point cloud to be divided as the first iteration Input point cloud, when the i-th iteration is performed, judge whether the number of points in the input point cloud of the i-th iteration is equal to 0, and when the number of points in the input point cloud of the i-th iteration is not equal to 0, the The Morton code of the input point cloud of the i-th iteration is shifted to the right by K bits.
- the Morton code is selected as a point, and the selected points are used to form the i-th LOD layer.
- the remaining points in the input point cloud of the i iteration except the selected points are determined as the input point cloud of the i+1 iteration, i is updated to i+1, and the execution is returned.
- the judgment Whether the number of points in the input point cloud of the i-th iteration is equal to 0, when the number of points in the input point cloud of the i-th iteration is equal to 0, determine the first LOD layer to the i-1th LOD layer For the divided LOD layer of the point cloud to be divided, the accuracy of neighbor node prediction based on the LOD layer is improved, thereby improving the coding and decoding efficiency.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Software Systems (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Error Detection And Correction (AREA)
- Image Generation (AREA)
- Image Analysis (AREA)
Abstract
Description
Claims (14)
- 一种划分方法,其中,包括:获取待划分点云,计算所述待划分点云的莫顿码;将所述待划分点云确定为第1次迭代的输入点云;当进行第i次迭代时,判断第i次迭代的输入点云中点的个数是否等于0;其中,i为初始值等于1的正整数;当所述第i次迭代的输入点云中点的个数不等于0时,将所述第i次迭代的输入点云的莫顿码右移K位;其中,K为正整数;从右移K位后莫顿码的值相等的点中,选取一个点;利用选取出的点组成第i个细节划分LOD层,将所述第i次迭代的输入点云中除了选取出的点外剩余的点,确定为第i+1次迭代的输入点云,i更新为i+1,返回执行所述当进行第i次迭代时,判断第i次迭代的输入点云中点的个数是否等于0;当所述第i次迭代的输入点云中点的个数等于0时,将第1个LOD层至第i-1个LOD层确定为所述待划分点云划分后的LOD层。
- 根据权利要求1所述的方法,其中,在当所述第i次迭代的输入点云中点的个数不等于0时,将所述第i次迭代的输入点云的莫顿码右移K位之前,所述方法还包括:根据所述待划分的点云的分布,确定K的值。
- 根据权利要求1所述的方法,其中,当i大于等于第一预设阈值时,在当所述第i次迭代的输入点云中点的个数不等于0时,将所述第i次迭代的输入点云的莫顿码右移K位之前,所述方法还包括:根据所述第i次迭代的输入点云中点的个数和所述第i次迭代的输入点云的分布,确定K的值。
- 根据权利要求1所述的方法,其中,当i大于等于第一预设阈值时,在利用选取出的点组成第i个细节划分LOD层,将所述第i次迭代的输入点云中除了选取出的点外剩余的点,确定为第i+1次迭代的输入点云,i更新为i+1之后,所述方法还包括:根据所述第i次迭代的输入点云,调用预设的基于距离划分LOD的算法进行划分得到LOD层;将划分得到的LOD层、第1个LOD层至第i-1个LOD层确定为:所述待划分点云划分后的LOD层。
- 根据权利要求1所述的方法,其中,所述从右移K位后的莫顿码的值相等的点中,选取一个点,包括:按照所述第i次迭代的输入点云的莫顿码从小到大的顺序,对所述第i次迭代的输入点云中的点进行排序;从所述右移K位后的莫顿码的值相等的点中,选取出排序在第一个的点。
- 根据权利要求1所述的方法,其中,所述从右移K位后的莫顿码的值相等的点中,选取一个点,包括:确定所述右移K位后的莫顿码的值相等的点的质心;将所述右移K位后的莫顿码的值相等的点中距离所述质心最近的点,确定为选取出的一个点。
- 根据权利要求1所述的方法,其中,在当所述第i次迭代的输入点云中点的个数不等于0时,将所述第i次迭代的输入点云的莫顿码右移K位之后,在利用选取出的点组成第i个细节划分LOD层之前,所述方法还包括:根据右移K位后的莫顿码的值相等的点的个数,确定对应的选取个数;根据所述对应的选取个数,从所述右移K位后的莫顿码的值相等的点中选取出所述选取个数个点。
- 根据权利要求1所述的方法,其中,在当所述第i次迭代的输入点云中点的个数不等于0时,将所述第i次迭代的输入点云的莫顿码右移K位之后,在利用选取出的点组成第i个细节划分LOD层之前,所述方法还包括:按照所述第i次迭代的输入点云的莫顿码从小到大的顺序,对所述第i次迭代的输入点云中的点进行排序;从右移K位后的莫顿码的值相等的点中,按照排序结果,每隔第二预设阈值选取一个点。
- 根据权利要求1所述的方法,其中,在获取待划分点云,计算所述待划分点云的莫顿码之后,在当进行第i次迭代时,判断第i次迭代的输入点云中点的个数是否等于0之前,所述方法还包括:将所述待划分点云的莫顿码右移N位,并将右移N位后的莫顿码的值相等的点组成一组点云;其中,N为正整数;将每组点云作分别确定为所述第1次迭代的输入点云。
- 一种编码器,其中,包括:第一计算模块,配置为获取待划分点云,计算所述待划分点云的莫顿码;第一确定模块,配置为将所述待划分的点云确定为第1次迭代的输入点云;第一判断模块,配置为当进行第i次迭代时,判断第i次迭代的输入点云中点的个数是否等于0;其中,i为初始值等于1的正整数;第一右移模块,配置为当所述第i次迭代的输入点云中点的个数不等于0时,将所述第i次迭代的输入点云的莫顿码右移K位;其中,K为正整数;第一选取模块,配置为从右移K位后的莫顿码的值相等的点中,选取一个点;第一划分模块,配置为利用选取出的点组成第i个细节划分LOD层,将所述第i次迭代的输入点云中除了选取出的点外剩余的点,确定为第i+1次迭代的输入点云,i更新为i+1,返回所述第一判断模块执行当进行第i次迭代时,判断第i次迭代的输入点云中点的个数是否等于0;第二确定模块,配置为当所述第i次迭代的输入点云中点的个数等于0时,将第1个LOD层至第i-1个LOD层确定为所述待划分点云划分后的LOD层。
- 一种解码器,其中,包括:第二计算模块,配置为获取待划分点云,计算所述待划分点云的莫顿码;第三确定模块,配置为将所述待划分的点云确定为第1次迭代的输入点云;第二判断模块,配置为当进行第i次迭代时,判断第i次迭代的输入点云中点的个数是否等于0;其中,i为初始值等于1的正整数;第二右移模块,配置为当所述第i次迭代的输入点云中点的个数不等于0时,将所述第i次迭代的输入点云的莫顿码右移K位;其中,K为正整数;第二选取模块,配置为从右移K位后的莫顿码的值相等的点中,选取一个点;第二划分模块,配置为利用选取出的点组成第i个细节划分LOD层,将所述第i次迭代的输入点云中除了选取出的点外剩余的点,确定为第i+1次迭代的输入点云,i更新为i+1,返回所述第二判断模块执行当进行第i次迭代时,判断第i次迭代的输入点云中点的个数是否等于0;第四确定模块,配置为当所述第i次迭代的输入点云中点的个数等于0时,将第1个LOD层至第i-1个LOD层确定为所述待划分点云划分后的LOD层。
- 一种编码器,其中,所述编码器包括:处理器以及存储有所述处理器可执行指令的存储介质,所述存储介质通过通信总线依赖所述处理器执行操作,当所述指令被所述处理器执行时,执行上述的权利要求1至9任一项所述的划分方法。
- 一种解码器,其中,所述解码器包括:处理器以及存储有所述处理器可执行指令的存储介质,所述存储介质通过通信总线依赖所述处理器执行操作,当所述指令被所述处理器执行时,执行上述的权利要求1至9任一项所述的划分方法。
- 一种计算机可读存储介质,其中,存储有可执行指令,当所述可执行指令被一个或多个处理器执行的时候,所述处理器执行所述的权利要求1至9任一项所述的划分方法。
Priority Applications (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020227011834A KR102692779B1 (ko) | 2019-09-30 | 2019-09-30 | 분할 방법, 인코더, 디코더 및 컴퓨터 저장 매체 |
CN201980098780.9A CN114207668A (zh) | 2019-09-30 | 2019-09-30 | 划分方法、编码器、解码器以及计算机存储介质 |
EP19947936.1A EP4040393A4 (en) | 2019-09-30 | 2019-09-30 | DIVISION PROCESS, ENCODER, DECODER AND COMPUTER STORAGE MEDIA |
JP2022519645A JP7386337B2 (ja) | 2019-09-30 | 2019-09-30 | 分割方法、符号器、復号器及びコンピュータ記憶媒体 |
PCT/CN2019/109653 WO2021062736A1 (zh) | 2019-09-30 | 2019-09-30 | 划分方法、编码器、解码器以及计算机存储介质 |
CN202210356934.3A CN114820831A (zh) | 2019-09-30 | 2019-09-30 | 划分方法、编码器、解码器以及计算机存储介质 |
US17/702,674 US11483560B2 (en) | 2019-09-30 | 2022-03-23 | Point cloud partition methods, encoder, and decoder |
US17/931,272 US11785216B2 (en) | 2019-09-30 | 2022-09-12 | Point cloud coding methods, encoder, and decoder |
US18/449,874 US20230388497A1 (en) | 2019-09-30 | 2023-08-15 | Point cloud coding methods, encoder, and decoder |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2019/109653 WO2021062736A1 (zh) | 2019-09-30 | 2019-09-30 | 划分方法、编码器、解码器以及计算机存储介质 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/702,674 Continuation US11483560B2 (en) | 2019-09-30 | 2022-03-23 | Point cloud partition methods, encoder, and decoder |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021062736A1 true WO2021062736A1 (zh) | 2021-04-08 |
Family
ID=75336664
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2019/109653 WO2021062736A1 (zh) | 2019-09-30 | 2019-09-30 | 划分方法、编码器、解码器以及计算机存储介质 |
Country Status (6)
Country | Link |
---|---|
US (3) | US11483560B2 (zh) |
EP (1) | EP4040393A4 (zh) |
JP (1) | JP7386337B2 (zh) |
KR (1) | KR102692779B1 (zh) |
CN (2) | CN114207668A (zh) |
WO (1) | WO2021062736A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113341396A (zh) * | 2021-05-28 | 2021-09-03 | 深圳市优必选科技股份有限公司 | 机器人及其充电桩识别方法和装置 |
WO2023287213A1 (ko) * | 2021-07-14 | 2023-01-19 | 엘지전자 주식회사 | 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법 |
WO2023287214A1 (ko) * | 2021-07-14 | 2023-01-19 | 엘지전자 주식회사 | 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법 |
WO2023136618A1 (ko) * | 2022-01-12 | 2023-07-20 | 엘지전자 주식회사 | 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 수신 방법 및 포인트 클라우드 데이터 수신 장치 |
JP7511010B2 (ja) | 2020-01-06 | 2024-07-04 | オッポ広東移動通信有限公司 | 区分方法、エンコーダー、デコーダー、及びコンピュータ記憶媒体 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114207668A (zh) * | 2019-09-30 | 2022-03-18 | Oppo广东移动通信有限公司 | 划分方法、编码器、解码器以及计算机存储介质 |
US11816868B2 (en) * | 2020-08-14 | 2023-11-14 | Tencent America LLC | Coding of multiple-component attributes for point cloud coding |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080238919A1 (en) * | 2007-03-27 | 2008-10-02 | Utah State University | System and method for rendering of texel imagery |
CN102436654A (zh) * | 2011-09-02 | 2012-05-02 | 清华大学 | 建筑点云的自适应分割方法 |
CN103077549A (zh) * | 2012-10-24 | 2013-05-01 | 华南理工大学 | 一种基于kd树的实时大规模地形可视化实现方法 |
US20150113379A1 (en) * | 2013-10-23 | 2015-04-23 | Schlumberger Technology Corporation | Representation of unstructured grids |
CN108470374A (zh) * | 2018-04-08 | 2018-08-31 | 中煤航测遥感集团有限公司 | 海量点云数据处理方法及装置 |
CN109257604A (zh) * | 2018-11-20 | 2019-01-22 | 山东大学 | 一种基于tmc3点云编码器的颜色属性编码方法 |
US20190080483A1 (en) * | 2017-09-14 | 2019-03-14 | Apple Inc. | Point Cloud Compression |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR3035990A1 (fr) * | 2015-05-07 | 2016-11-11 | Inst Mines Telecom | Procede de simplification de modele de geometrie |
US10897269B2 (en) * | 2017-09-14 | 2021-01-19 | Apple Inc. | Hierarchical point cloud compression |
CN109886272B (zh) * | 2019-02-25 | 2020-10-30 | 腾讯科技(深圳)有限公司 | 点云分割方法、装置、计算机可读存储介质和计算机设备 |
CN109889840B (zh) * | 2019-03-20 | 2022-11-22 | 北京大学深圳研究生院 | 点云编码和解码的方法、编码设备和解码设备 |
EP4040790A4 (en) * | 2019-09-30 | 2022-10-19 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | PREDICTION METHOD, ENCODER, DECODER AND COMPUTER STORAGE MEDIUM |
CN114207668A (zh) * | 2019-09-30 | 2022-03-18 | Oppo广东移动通信有限公司 | 划分方法、编码器、解码器以及计算机存储介质 |
-
2019
- 2019-09-30 CN CN201980098780.9A patent/CN114207668A/zh active Pending
- 2019-09-30 KR KR1020227011834A patent/KR102692779B1/ko active IP Right Grant
- 2019-09-30 JP JP2022519645A patent/JP7386337B2/ja active Active
- 2019-09-30 WO PCT/CN2019/109653 patent/WO2021062736A1/zh unknown
- 2019-09-30 EP EP19947936.1A patent/EP4040393A4/en active Pending
- 2019-09-30 CN CN202210356934.3A patent/CN114820831A/zh active Pending
-
2022
- 2022-03-23 US US17/702,674 patent/US11483560B2/en active Active
- 2022-09-12 US US17/931,272 patent/US11785216B2/en active Active
-
2023
- 2023-08-15 US US18/449,874 patent/US20230388497A1/en active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080238919A1 (en) * | 2007-03-27 | 2008-10-02 | Utah State University | System and method for rendering of texel imagery |
CN102436654A (zh) * | 2011-09-02 | 2012-05-02 | 清华大学 | 建筑点云的自适应分割方法 |
CN103077549A (zh) * | 2012-10-24 | 2013-05-01 | 华南理工大学 | 一种基于kd树的实时大规模地形可视化实现方法 |
US20150113379A1 (en) * | 2013-10-23 | 2015-04-23 | Schlumberger Technology Corporation | Representation of unstructured grids |
US20190080483A1 (en) * | 2017-09-14 | 2019-03-14 | Apple Inc. | Point Cloud Compression |
CN108470374A (zh) * | 2018-04-08 | 2018-08-31 | 中煤航测遥感集团有限公司 | 海量点云数据处理方法及装置 |
CN109257604A (zh) * | 2018-11-20 | 2019-01-22 | 山东大学 | 一种基于tmc3点云编码器的颜色属性编码方法 |
Non-Patent Citations (2)
Title |
---|
ERIK HUBO ; TOM MERTENS ; TOM HABER ; PHILIPPE BEKAERT: "The Quantized kd-Tree: Efficient Ray Tracing of Compressed Point Clouds", IEEE SYMPOSIUM ON INTERACTIVE RAY TRACING, 1 September 2006 (2006-09-01), pages 105 - 113, XP031008778, ISBN: 978-1-4244-0693-7, DOI: 10.1109/RT.2006.280221 * |
YANG ZHENFA: "Research on Rendering of Massive Point Cloud Based on Multi-resolution LOD", GEOSPATIAL INFORMATION, vol. 14, no. 10, 31 October 2016 (2016-10-31), pages 22 - 25+4, XP055797922, ISSN: 1672-4623, DOI: 10.3969/j.issn.1672-4623.2016.10 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7511010B2 (ja) | 2020-01-06 | 2024-07-04 | オッポ広東移動通信有限公司 | 区分方法、エンコーダー、デコーダー、及びコンピュータ記憶媒体 |
CN113341396A (zh) * | 2021-05-28 | 2021-09-03 | 深圳市优必选科技股份有限公司 | 机器人及其充电桩识别方法和装置 |
CN113341396B (zh) * | 2021-05-28 | 2023-12-15 | 深圳市优必选科技股份有限公司 | 机器人及其充电桩识别方法和装置 |
WO2023287213A1 (ko) * | 2021-07-14 | 2023-01-19 | 엘지전자 주식회사 | 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법 |
WO2023287214A1 (ko) * | 2021-07-14 | 2023-01-19 | 엘지전자 주식회사 | 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법 |
WO2023136618A1 (ko) * | 2022-01-12 | 2023-07-20 | 엘지전자 주식회사 | 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 수신 방법 및 포인트 클라우드 데이터 수신 장치 |
Also Published As
Publication number | Publication date |
---|---|
CN114820831A (zh) | 2022-07-29 |
CN114207668A (zh) | 2022-03-18 |
JP7386337B2 (ja) | 2023-11-24 |
KR102692779B1 (ko) | 2024-08-08 |
US11785216B2 (en) | 2023-10-10 |
US20220217343A1 (en) | 2022-07-07 |
JP2023500186A (ja) | 2023-01-05 |
EP4040393A4 (en) | 2023-06-14 |
EP4040393A1 (en) | 2022-08-10 |
US20230388497A1 (en) | 2023-11-30 |
US11483560B2 (en) | 2022-10-25 |
KR20220074892A (ko) | 2022-06-03 |
US20230007250A1 (en) | 2023-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021062736A1 (zh) | 划分方法、编码器、解码器以及计算机存储介质 | |
JP7330306B2 (ja) | 変換方法、逆変換方法、エンコーダ、デコーダ及び記憶媒体 | |
WO2021062772A1 (zh) | 预测方法、编码器、解码器及计算机存储介质 | |
US20220329833A1 (en) | Nearest neighbor search method, apparatus, device, and storage medium | |
WO2022120594A1 (zh) | 点云编解码方法、编码器、解码器及计算机存储介质 | |
US20230086264A1 (en) | Decoding method, encoding method, decoder, and encoder based on point cloud attribute prediction | |
US20230101072A1 (en) | Nearest neighbour search method, encoder, decoder and storage medium | |
JP7520223B2 (ja) | 点群階層化方法、デコーダ、エンコーダ及び記憶媒体 | |
JP2024123172A (ja) | 区分方法、エンコーダー、デコーダー、及びコンピュータ記憶媒体 | |
WO2021108969A1 (zh) | 属性信息的预测方法、编码器、解码器、及存储介质 | |
CN115438081A (zh) | 一种海量船舶位置点云多级聚合与实时更新方法 | |
CN115512077A (zh) | 一种基于多层动态特征点云的隐式三维场景表征方法 | |
CN114116925A (zh) | 一种时空数据的查询方法及相关装置 | |
TWI854112B (zh) | 一種最近鄰搜索方法、編碼器、解碼器及儲存媒介 | |
WO2022067782A1 (zh) | 一种点云数据的层次划分方法、编码器及存储介质 | |
WO2023155045A1 (zh) | 预测的方法和装置、编码器、解码器和编解码系统 | |
WO2022217611A1 (zh) | 编解码方法及相关设备、存储介质 | |
WO2023025174A1 (zh) | 点云预测、点云编码、点云解码方法及设备 | |
JPWO2021218509A5 (zh) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 19947936 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2022519645 Country of ref document: JP 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: 20227011834 Country of ref document: KR Kind code of ref document: A |
|
ENP | Entry into the national phase |
Ref document number: 2019947936 Country of ref document: EP Effective date: 20220502 |