TW202406343A - Encoding method, decoding method, decoder, encoder and computer readable storage medium - Google Patents

Encoding method, decoding method, decoder, encoder and computer readable storage medium Download PDF

Info

Publication number
TW202406343A
TW202406343A TW112125920A TW112125920A TW202406343A TW 202406343 A TW202406343 A TW 202406343A TW 112125920 A TW112125920 A TW 112125920A TW 112125920 A TW112125920 A TW 112125920A TW 202406343 A TW202406343 A TW 202406343A
Authority
TW
Taiwan
Prior art keywords
occupancy
upsampled
voxels
group
groups
Prior art date
Application number
TW112125920A
Other languages
Chinese (zh)
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廣東移動通信有限公司
Publication of TW202406343A publication Critical patent/TW202406343A/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • 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/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding

Abstract

Embodiments of the present application provide an encoding method, a decoding method, a decoder, an encoder and a computer readable storage medium, capable of improving the encoding efficiency, the decoding efficiency and the compression performance, thereby improving the encoding performance and the decoding performance. The decoding method comprises: parsing a bitstream, and determining occupation indication information corresponding to a first scale point cloud; determining a second scale point cloud, performing up-sampling and division processing on the second scale point cloud, and determining m groups of up-sampled voxels, wherein the second scale point cloud is previous decoded point cloud data corresponding to the first scale point cloud, and m is an integer greater than or equal to 1; sequentially performing occupation probability prediction on the m groups of up-sampled voxels, determining m groups of occupation probabilities, decoding the occupation indication information according to the m groups of occupation probabilities, and determining m groups of respective occupation symbols; and on the basis of the m groups of occupation symbols, determining reconstructed geometric data corresponding to the first scale point cloud.

Description

編解碼方法、解碼器、編碼器、碼流及電腦可讀儲存媒介Codec methods, decoders, encoders, code streams and computer-readable storage media

本申請涉及點雲壓縮編解碼技術,尤其涉及一種編解碼方法、解碼器、編碼器及電腦可讀儲存媒介。This application relates to point cloud compression coding and decoding technology, and in particular, to a coding and decoding method, a decoder, an encoder and a computer-readable storage medium.

點雲是一組點的集合,它可以儲存每個點的幾何位置和相關屬性資訊,從而準確立體地描述空間中的物體。點雲資料量龐大,一幀點雲可以包含上百萬的點,這也對有效地儲存和傳輸點雲帶來了極大地困難與挑戰。因此,壓縮技術被用於減少點雲儲存中的冗餘資訊,從而方便後續的處理工作。A point cloud is a collection of points that can store the geometric position and related attribute information of each point to accurately describe objects in space. The amount of point cloud data is huge, and one frame of point cloud can contain millions of points, which also brings great difficulties and challenges to the effective storage and transmission of point clouds. Therefore, compression technology is used to reduce redundant information in point cloud storage to facilitate subsequent processing.

目前,基於神經網路的點雲幾何壓縮技術主要分為幾何失真壓縮和幾何無失真壓縮。對於幾何無失真壓縮,在編碼器端,往往需要以父節點,鄰居節點等周圍上下文為輸入,經過神經網路(如卷積,全連接)層的處理,輸出點雲的幾何資料中每個體素的佔據概率,進而使用熵編碼器,將每個體素的佔據概率對應的體素佔據符號,轉換成碼流。相應地,在解碼器端,根據同樣的過程預測每個體素的佔據概率,根據預測的佔據概率,使用熵解碼器從碼流中解碼出體素佔據符號,重建點雲的幾何資料。At present, point cloud geometric compression technology based on neural networks is mainly divided into geometric distortion compression and geometric distortion-free compression. For geometric distortion-free compression, on the encoder side, it is often necessary to use the surrounding context such as parent nodes, neighbor nodes, etc. as input. After processing by the neural network (such as convolution, fully connected) layer, each volume in the geometric data of the point cloud is output. The occupancy probability of each voxel is then used, and an entropy encoder is used to convert the voxel occupancy symbol corresponding to the occupancy probability of each voxel into a code stream. Correspondingly, on the decoder side, the occupancy probability of each voxel is predicted according to the same process. Based on the predicted occupancy probability, the entropy decoder is used to decode the voxel occupancy symbols from the code stream and reconstruct the geometric data of the point cloud.

可以看出,對點雲中的每個體素進行佔據概率預測,進而基於佔據概率進行編解碼的方法會導致編解碼時間過長,從而降低了編解碼效率,從而降低了編解碼性能。It can be seen that the method of predicting the occupancy probability of each voxel in the point cloud and then encoding and decoding based on the occupancy probability will lead to too long encoding and decoding time, thereby reducing the encoding and decoding efficiency, thereby reducing the encoding and decoding performance.

本申請實施例提供一種編解碼方法、解碼器、編碼器及電腦可讀儲存媒介,能夠提高編解碼效率與壓縮性能,從而提高編解碼性能。Embodiments of the present application provide a coding and decoding method, a decoder, an encoder and a computer-readable storage medium, which can improve coding and decoding efficiency and compression performance, thereby improving coding and decoding performance.

本申請的技術方案是這樣實現的:The technical solution of this application is implemented as follows:

本申請實施例提供一種解碼方法,包括:The embodiment of this application provides a decoding method, including:

解析碼流,確定第一尺度點雲對應的佔用指示資訊;Analyze the code stream to determine the occupancy indication information corresponding to the first scale point cloud;

確定第二尺度點雲,並對所述第二尺度點雲進行上採樣與劃分處理,確定m組上採樣體素;其中,所述第二尺度點雲為所述第一尺度點雲對應的前一個已解碼的點雲資料;m為大於或等於1的整數;Determine the second scale point cloud, perform upsampling and division processing on the second scale point cloud, and determine m groups of upsampled voxels; wherein the second scale point cloud is the corresponding point cloud of the first scale point cloud. The previous decoded point cloud data; m is an integer greater than or equal to 1;

對所述m組上採樣體素依次進行佔用概率預測,確定m組佔用概率,並根據所述m組佔用概率對所述佔用指示資訊進行解碼,確定所述m組各自的佔用符號;Predict the occupancy probabilities of the m groups of upsampled voxels in sequence, determine the m groups of occupancy probabilities, decode the occupancy indication information according to the m groups of occupancy probabilities, and determine the respective occupancy symbols of the m groups;

基於所述m組佔用符號,確定所述第一尺度點雲對應的重建幾何資料。Based on the m sets of occupancy symbols, the reconstructed geometric data corresponding to the first scale point cloud is determined.

本申請實施例提供一種編碼方法,包括:The embodiment of the present application provides an encoding method, including:

對第一尺度點雲進行體素下採樣,確定第二尺度點雲;Perform voxel downsampling on the first-scale point cloud to determine the second-scale point cloud;

對所述第二尺度點雲進行上採樣與劃分處理,確定m組上採樣體素;m為大於或等於1的整數;Perform upsampling and division processing on the second scale point cloud to determine m groups of upsampled voxels; m is an integer greater than or equal to 1;

對所述m組上採樣體素依次進行佔用概率預測,確定m組佔用概率,根據所述m組佔用概率確定所述m組各自的佔用符號;Predict the occupancy probability of the m groups of upsampled voxels in sequence, determine the m group of occupancy probabilities, and determine the respective occupancy symbols of the m groups according to the m group of occupancy probabilities;

對所述m組各自的佔用符號進行編碼,確定所述第一尺度點雲對應的佔用指示資訊,並將所述佔用指示資訊寫入碼流。The m groups of respective occupancy symbols are encoded to determine the occupancy indication information corresponding to the first scale point cloud, and the occupancy indication information is written into the code stream.

本申請實施例提供一種解碼器,包括:This embodiment of the present application provides a decoder, including:

解析部分,配置為解析碼流,確定第一尺度點雲對應的佔用指示資訊;The parsing part is configured to parse the code stream and determine the occupancy indication information corresponding to the first scale point cloud;

第一分組部分,配置為確定第二尺度點雲,並對所述第二尺度點雲進行上採樣與劃分處理,確定m組上採樣體素;其中,所述第二尺度點雲為所述第一尺度點雲對應的前一個已解碼的點雲資料;m為大於或等於1的整數;The first grouping part is configured to determine the second scale point cloud, perform upsampling and dividing processing on the second scale point cloud, and determine m groups of upsampled voxels; wherein the second scale point cloud is the The previous decoded point cloud data corresponding to the first scale point cloud; m is an integer greater than or equal to 1;

第一預測部分,配置為對所述m組上採樣體素依次進行佔用概率預測,確定m組佔用概率,並根據所述m組佔用概率對所述佔用指示資訊進行解碼,確定所述m組各自的佔用符號;The first prediction part is configured to predict the occupancy probabilities of the m groups of upsampled voxels in sequence, determine the m groups of occupancy probabilities, and decode the occupancy indication information according to the m groups of occupancy probabilities to determine the m groups of occupancy probabilities. respective occupancy symbols;

解碼部分,配置為基於所述m組佔用符號,確定所述第一尺度點雲對應的重建幾何資料。The decoding part is configured to determine the reconstructed geometric data corresponding to the first scale point cloud based on the m groups of occupied symbols.

本申請實施例提供一種編碼器,包括:An embodiment of the present application provides an encoder, including:

下採樣部分,配置為對第一尺度點雲進行體素下採樣,確定第二尺度點雲;The downsampling part is configured to perform voxel downsampling on the first-scale point cloud and determine the second-scale point cloud;

第二分組部分,配置為對所述第二尺度點雲進行上採樣與劃分處理,確定m組上採樣體素;m為大於或等於1的整數;The second grouping part is configured to perform upsampling and dividing processing on the second scale point cloud, and determine m groups of upsampled voxels; m is an integer greater than or equal to 1;

第二預測部分,配置為對所述m組上採樣體素依次進行佔用概率預測,確定m組佔用概率,根據所述m組佔用概率確定所述m組各自的佔用符號;The second prediction part is configured to predict the occupancy probability of the m groups of upsampled voxels in sequence, determine the m group of occupancy probabilities, and determine the respective occupancy symbols of the m groups according to the m group of occupancy probabilities;

編碼部分,配置為對所述m組各自的佔用符號進行編碼,確定所述第一尺度點雲對應的佔用指示資訊,並將所述佔用指示資訊寫入碼流。The encoding part is configured to encode the respective occupancy symbols of the m groups, determine the occupancy indication information corresponding to the first scale point cloud, and write the occupancy indication information into the code stream.

本申請實施例提供一種碼流,包括:This embodiment of the present application provides a code stream, including:

所述碼流是根據待編碼資訊進行位元編碼生成的;其中,所述待編碼資訊至少包括:第一尺度點雲對應的佔用指示資訊。The code stream is generated by bit encoding based on the information to be encoded; wherein the information to be encoded at least includes: occupancy indication information corresponding to the first scale point cloud.

本申請實施例提供一種解碼器,包括:This embodiment of the present application provides a decoder, including:

第一記憶體,配置為儲存可執行指令;a first memory configured to store executable instructions;

第一處理器,配置為執行所述第一記憶體中儲存的可執行指令時,實現如上述任一項所述的解碼方法。The first processor is configured to implement the decoding method as described in any one of the above when executing executable instructions stored in the first memory.

本申請實施例提供一種編碼器,包括:An embodiment of the present application provides an encoder, including:

第二記憶體,配置為儲存可執行指令;a second memory configured to store executable instructions;

第二處理器,配置為執行所述第二記憶體中儲存的可執行指令時,實現如上述任一項所述的編碼方法。The second processor is configured to implement the encoding method as described in any one of the above when executing the executable instructions stored in the second memory.

本申請實施例提供一種電腦可讀儲存媒介,儲存有可執行指令,用於引起第一處理器執行時,實現上述的解碼方法,或者,用於引起第二處理器執行時,實現上述的編碼方法。Embodiments of the present application provide a computer-readable storage medium that stores executable instructions, which are used to cause the first processor to implement the above decoding method when executed, or to cause the second processor to implement the above encoding when executed. method.

本申請實施例提供一種電腦程式產品,包括電腦程式或指令,所述電腦程式或指令被第一處理器執行時,實現本申請實施例提供的解碼方法;或者,所述電腦程式或指令被第二處理器執行時,實現本申請實施例提供的編碼方法。An embodiment of the present application provides a computer program product, including a computer program or an instruction. When the computer program or instruction is executed by a first processor, the decoding method provided by an embodiment of the application is implemented; or, the computer program or instruction is executed by a second processor. When executed by the second processor, the encoding method provided by the embodiment of the present application is implemented.

本申請實施例提供了一種編解碼方法、解碼器、編碼器及電腦可讀儲存媒介,在從碼流中解析得到第一尺度點雲對應的佔用指示資訊,也即表徵第一尺度點雲中各個體素佔用情況的編碼資訊時,可以透過對第一尺度點雲對應的前一個已解碼的第二尺度點雲,進行上採樣與劃分處理,將第二尺度點雲上採樣至第一尺度,並將上採樣後的體素劃分為m組,分組依次進行佔用概率預測,得到m組佔用概率。透過分組預測,加快了佔用概率的預測速度,提高了預測過程的處理效率。如此,利用m組佔用概率對第一尺度點雲對應的佔用指示資訊進行解碼,得到已解碼的m組佔用符號,重建第一尺度點雲的幾何資料,完成對第一尺度點雲的解碼,提高了解碼效率與解碼性能。Embodiments of the present application provide a coding and decoding method, a decoder, an encoder and a computer-readable storage medium, which parse the occupancy indication information corresponding to the first-scale point cloud from the code stream, that is, represent the occupancy indication information in the first-scale point cloud. When encoding information about the occupancy of each voxel, you can upsample and divide the previously decoded second-scale point cloud corresponding to the first-scale point cloud, and upsample the second-scale point cloud to the first scale. The upsampled voxels are divided into m groups, and the occupancy probability predictions are performed on the groups in sequence to obtain m groups of occupancy probabilities. Through group prediction, the prediction speed of occupancy probability is accelerated and the processing efficiency of the prediction process is improved. In this way, m groups of occupancy probabilities are used to decode the occupancy indication information corresponding to the first-scale point cloud, and m groups of decoded occupancy symbols are obtained, and the geometric data of the first-scale point cloud is reconstructed to complete the decoding of the first-scale point cloud. Improved decoding efficiency and decoding performance.

為了使本申請的目的、技術方案和優點更加清楚,下面將結合附圖對本申請作進一步地詳細描述,所描述的實施例不應視為對本申請的限制,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其它實施例,都屬於本申請保護的範圍。In order to make the purpose, technical solutions and advantages of the present application clearer, the present application will be described in further detail below in conjunction with the accompanying drawings. The described embodiments should not be regarded as limiting the present application. Those of ordinary skill in the art will not make any All other embodiments obtained under the premise of creative work belong to the scope of protection of this application.

在以下的描述中,涉及到“一些實施例”,其描述了所有可能實施例的子集,但是可以理解,“一些實施例”可以是所有可能實施例的相同子集或不同子集,並且可以在不衝突的情況下相互結合。In the following description, reference is made to "some embodiments" which describe a subset of all possible embodiments, but it is understood that "some embodiments" may be the same subset or a different subset of all possible embodiments, and Can be combined with each other without conflict.

在以下的描述中,所涉及的術語“第一\第二\第三”僅僅是是區別類似的物件,不代表針對物件的特定排序,可以理解地,“第一\第二\第三”在允許的情況下可以互換特定的順序或先後次序,以使這裡描述的本申請實施例能夠以除了在這裡圖示或描述的以外的順序實施。In the following description, the terms "first\second\third" are only used to distinguish similar objects and do not represent a specific ordering of objects. It is understandable that "first\second\third" Where permitted, the specific order or sequence may be interchanged so that the embodiments of the application described herein can be practiced in an order other than that illustrated or described herein.

除非另有定義,本文所使用的所有的技術和科學術語與屬於本申請的技術領域的技術人員通常理解的含義相同。本文中所使用的術語只是為了描述本申請實施例的目的,不是旨在限制本申請。Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the technical field to which this application belongs. The terms used herein are only for the purpose of describing the embodiments of the present application and are not intended to limit the present application.

對本申請實施例進行進一步詳細說明之前,對本申請實施例中涉及的名詞和術語進行說明,本申請實施例中涉及的名詞和術語適用於如下的解釋。Before further describing the embodiments of the present application in detail, the nouns and terms involved in the embodiments of the present application are explained. The nouns and terms involved in the embodiments of the present application are applicable to the following explanations.

體素:體素是體積元素的簡稱,是數位資料於三維空間分割上的最小單位。透過體素,可以對3D空間進行網格劃分,並賦予每個網格特徵。示例性地,體素可以是三維空間中固定大小的立方塊。體素可以廣泛用於三維成像、科學資料與醫學影像等領域。Voxel: Voxel is the abbreviation of volume element and is the smallest unit of digital data in three-dimensional space division. Through voxels, the 3D space can be meshed and each mesh can be given characteristics. For example, a voxel may be a fixed-sized cube in three-dimensional space. Voxels can be widely used in fields such as three-dimensional imaging, scientific data, and medical imaging.

點雲壓縮演算法包括基於幾何的點雲壓縮(Geometry-based Point Cloud Compression,G-PCC)。G-PCC中的幾何壓縮主要透過八叉樹模型和/或三角形表面模型實現。Point cloud compression algorithms include Geometry-based Point Cloud Compression (G-PCC). Geometric compression in G-PCC is mainly implemented through octree models and/or triangular surface models.

隨著人工智慧技術的發展,神經網路被應用於基於幾何的點雲壓縮技術中。基於神經網路的點雲幾何壓縮技術,可大致分為幾何失真壓縮與無失真壓縮。其中,無失真壓縮演算法主要圍繞體素佔用概率的預測模型的設計展開。其中體素的資料表征通常使用八叉樹模型,體積模型,稀疏張量表徵等,在預測模型的設計中,往對於幾何無失真壓縮,在編碼器端,往往需要以父節點,鄰居節點等周圍上下文為輸入,經過神經網路(如卷積,全連接)層的處理,輸出點雲的幾何資料中每個體素的佔據概率,進而使用熵編碼器,將每個體素的佔據概率對應的體素佔據符號,轉換成碼流。相應地,在解碼器端,根據同樣的過程預測每個體素的佔據概率,根據預測的佔據概率,使用熵解碼器從碼流中解碼出體素佔據符號,重建點雲的幾何資料。With the development of artificial intelligence technology, neural networks are applied to geometry-based point cloud compression technology. Point cloud geometric compression technology based on neural networks can be roughly divided into geometric distortion compression and distortion-free compression. Among them, the distortion-free compression algorithm mainly focuses on the design of the prediction model of voxel occupancy probability. The data representation of voxels usually uses octree models, volume models, sparse tensor representations, etc. In the design of prediction models, geometric distortion-free compression is often required. On the encoder side, it is often necessary to use parent nodes, neighbor nodes, etc. The surrounding context is the input, and after processing by the neural network (such as convolution, fully connected) layer, the occupancy probability of each voxel in the geometric data of the point cloud is output, and then an entropy encoder is used to convert the occupancy probability of each voxel corresponding to Voxels occupy symbols and are converted into code streams. Correspondingly, on the decoder side, the occupancy probability of each voxel is predicted according to the same process. Based on the predicted occupancy probability, the entropy decoder is used to decode the voxel occupancy symbols from the code stream and reconstruct the geometric data of the point cloud.

可以看出,對點雲中的每個體素進行佔據概率預測,進而基於佔據概率進行編解碼的方法往往存在性能或者複雜度上的缺陷:比如,待預測體素所處位置的周圍上下文不充分,導致預測不準確,進而導致編碼壓縮性能差;或者對每個體素進行佔據概率預測,過度使用了上下文資訊,造成了碼率的冗餘,從而導致編解碼時間緩慢,編解碼效率低。綜上所述,降低了編解碼性能。It can be seen that the method of predicting the occupancy probability of each voxel in the point cloud and then encoding and decoding based on the occupancy probability often has performance or complexity flaws: for example, the surrounding context of the location of the voxel to be predicted is insufficient. , leading to inaccurate prediction, which in turn leads to poor coding and compression performance; or the occupancy probability prediction for each voxel overuses context information, resulting in redundant code rates, resulting in slow encoding and decoding times and low encoding and decoding efficiency. In summary, the encoding and decoding performance is reduced.

本申請實施例提供一種編解碼方法、解碼器、編碼器及電腦可讀儲存媒介,能夠提高編解碼效率,提高編解碼性能。為了便於對本申請實施例所提供的技術方案的理解,首先提供一種G-PCC編碼的流程框圖和G-PCC解碼的流程框圖。需要說明的是,本申請實施例描述的G-PCC編碼的流程框圖和G-PCC解碼的流程框圖僅是為了更加清楚地說明本申請實施例的技術方案,並不構成對於本申請實施例提供的技術方案的限定。本領域技術人員可知,隨著點雲壓縮技術的演變和新業務場景的出現,本申請實施例提供的技術方案對於類似G-PCC的點雲編解碼架構同樣適用,本申請實施例壓縮的點雲可以是視訊中的點雲,但不局限於此。Embodiments of the present application provide a coding and decoding method, a decoder, an encoder and a computer-readable storage medium, which can improve coding and decoding efficiency and coding and decoding performance. In order to facilitate understanding of the technical solutions provided by the embodiments of the present application, a flow chart of G-PCC encoding and a flow chart of G-PCC decoding are first provided. It should be noted that the flow chart of G-PCC encoding and the flow chart of G-PCC decoding described in the embodiment of the present application are only for the purpose of explaining the technical solutions of the embodiment of the present application more clearly, and do not constitute the implementation of the present application. Limitation of the technical solution provided by the example. Those skilled in the art know that with the evolution of point cloud compression technology and the emergence of new business scenarios, the technical solutions provided by the embodiments of this application are also applicable to point cloud encoding and decoding architectures similar to G-PCC. The cloud can be a point cloud in the video, but is not limited to this.

在點雲G-PCC編碼器框架中,將輸入三維圖像模型的點雲進行slice劃分後,對每一個slice進行獨立編碼。In the point cloud G-PCC encoder framework, after dividing the point cloud of the input three-dimensional image model into slices, each slice is independently encoded.

如圖1所示的G-PCC編碼的流程框圖中,應用於編碼器中,針對待編碼的點雲資料,先透過條帶(slice)劃分,將點雲資料劃分為多個slice。在每一個slice中,點雲的幾何資訊和屬性資訊是分開進行編碼的。在幾何編碼過程中,對幾何資訊進行座標轉換,使點雲全都包含在一個包圍盒(bounding box)中,然後再進行量化,量化主要起到縮放的作用,由於量化取整,使得一部分點雲的幾何資訊相同,可以基於參數來決定是否移除重複點,量化和移除重複點這一過程又被稱為體素化過程。接著對bounding box進行八叉樹劃分。在基於八叉樹的幾何資訊編碼流程中,將包圍盒八等分為8個子立方體,對非空的(包含點雲中的點)的子立方體繼續進行八等分,直到劃分得到的葉子結點為1x1x1的單位立方體時停止劃分,對葉子結點中的點進行算術編碼,生成二進位的幾何位元流,即幾何碼流。在基於三角面片集(triangle soup,trisoup)的幾何資訊編碼過程中,同樣也要先進行八叉樹劃分,但區別於基於八叉樹的幾何資訊編碼,該trisoup不需要將點雲逐級劃分到邊長為1x1x1的單位立方體,而是劃分到子塊(block)邊長為W時停止劃分,基於每個block中點雲的分佈所形成的表面,得到該表面與block的十二條邊所產生的至多十二個交點(vertex),對vertex進行算術編碼(基於交點進行表面擬合),生成二進位的幾何位元流,即幾何碼流。vertex還用於在幾何重建的過程的實現,而重建的幾何資訊在對點雲的屬性編碼時使用。As shown in the flow chart of G-PCC encoding shown in Figure 1, it is applied to the encoder. For the point cloud data to be encoded, the point cloud data is first divided into multiple slices through strip division. In each slice, the geometric information and attribute information of the point cloud are encoded separately. In the process of geometric encoding, the coordinates of the geometric information are converted so that all point clouds are contained in a bounding box, and then quantized. The quantization mainly plays the role of scaling. Due to the quantization rounding, part of the point cloud The geometric information is the same, and it can be decided whether to remove duplicate points based on parameters. The process of quantizing and removing duplicate points is also called the voxelization process. Then the bounding box is divided into octrees. In the octree-based geometric information encoding process, the bounding box is divided into eight equal parts into eight sub-cubes, and the non-empty sub-cubes (containing points in the point cloud) continue to be divided into eight equal parts until the leaf structure is obtained. The division stops when the point is a 1x1x1 unit cube, and the points in the leaf nodes are arithmetic encoded to generate a binary geometric bit stream, that is, a geometric code stream. In the process of geometric information encoding based on triangle patch set (triangle soup, trisoup), octree division is also required first, but unlike octree-based geometric information encoding, this trisoup does not need to divide the point cloud step by step. It is divided into a unit cube with a side length of 1x1x1, but is divided into sub-blocks (blocks). The division stops when the side length is W. Based on the surface formed by the distribution of point clouds in each block, twelve links between the surface and the block are obtained. At most twelve intersection points (vertex) generated by the edges, the vertex is arithmetic encoded (surface fitting based on the intersection points) to generate a binary geometric bit stream, that is, a geometric code stream. Vertex is also used in the implementation of the geometric reconstruction process, and the reconstructed geometric information is used when encoding the attributes of the point cloud.

在屬性編碼過程中,進行顏色轉換,將顏色資訊(即屬性資訊)從RGB顏色空間轉換到YUV顏色空間。然後,利用重建的幾何資訊對點雲重新著色,使得未編碼的屬性資訊與重建的幾何資訊對應起來。在顏色資訊編碼過程中,主要有兩種變換方法,一是依賴於細節層次(Level of Detail,LOD)劃分的基於距離的提升變換,二是直接進行區域自我調整分層變換(Region Adaptive Hierarchal Transform,RAHT)的變換,這兩種方法都會將顏色資訊從空間域轉換到頻域,透過變換得到高頻係數和低頻係數,最後對係數進行量化(即量化係數),最後,將經過八叉樹劃分及表面擬合的幾何編碼資料與量化係數處理屬性編碼資料進行slice合成後,依次編碼每個block的vertex座標(即算數編碼),生成二進位的屬性位元流,即屬性碼流。During the attribute encoding process, color conversion is performed to convert color information (ie, attribute information) from RGB color space to YUV color space. Then, the point cloud is recolored using the reconstructed geometric information, so that the uncoded attribute information corresponds to the reconstructed geometric information. In the process of color information encoding, there are two main transformation methods. One is the distance-based lifting transformation that relies on Level of Detail (LOD) division, and the other is the direct Region Adaptive Hierarchal Transform (Region Adaptive Hierarchal Transform). , RAHT) transformation, both methods will convert the color information from the spatial domain to the frequency domain, obtain high-frequency coefficients and low-frequency coefficients through transformation, and finally quantize the coefficients (i.e., quantization coefficients). Finally, the octree will be passed After the geometric encoding data of division and surface fitting and the attribute encoding data of quantization coefficient processing are slice-synthesized, the vertex coordinates of each block are sequentially encoded (ie, arithmetic encoding), and a binary attribute bit stream is generated, which is the attribute code stream.

如圖2所示的G-PCC解碼的流程框圖,應用於解碼器中。解碼器獲取二進位碼流,針對二進位碼流中的幾何位元流(即幾何碼流)和屬性位元流分別進行獨立解碼。在對幾何位元流的解碼時,透過算術解碼-八叉樹合成-表面擬合-重建幾何-反座標變換,得到點雲的幾何資訊;在對屬性位元流的解碼時,透過算術解碼-反量化-基於LOD的反提升或者基於RAHT的反變換-反顏色轉換,得到點雲的屬性資訊,基於幾何資訊和屬性資訊還原待編碼的點雲資料的三維圖像模型。The flow chart of G-PCC decoding shown in Figure 2 is applied to the decoder. The decoder obtains the binary code stream and independently decodes the geometric bit stream (i.e., the geometric code stream) and the attribute bit stream in the binary code stream. When decoding the geometry bit stream, the geometric information of the point cloud is obtained through arithmetic decoding-octree synthesis-surface fitting-reconstructed geometry-inverse coordinate transformation; when decoding the attribute bit stream, through arithmetic decoding -Inverse quantization - LOD-based inverse lifting or RAHT-based inverse transformation - inverse color conversion to obtain the attribute information of the point cloud, and restore the three-dimensional image model of the point cloud data to be encoded based on the geometric information and attribute information.

本申請實施例的編碼方法,可以應用於如圖1所示的G-PCC的幾何資訊編碼流程中,在體素化完成之後,對體素化後的第一尺度點雲進行體素下採樣,確定第二尺度點雲;對第二尺度點雲進行上採樣與劃分處理,確定m組上採樣體素;對m組上採樣體素依次進行佔用概率預測,確定m組佔用概率,根據m組佔用概率確定m組各自的佔用符號,作為需要進行熵編碼的資料,從而替代圖1中八叉樹分配、表面擬合的處理過程。本申請實施例的編碼過程可以採用圖1中的算術編碼方法,如熵編碼。透過算術編碼過程對m組各自的佔用符號進行編碼,確定第一尺度點雲對應的佔用指示資訊,寫入幾何位元流(碼流)。The encoding method of the embodiment of the present application can be applied to the geometric information encoding process of G-PCC as shown in Figure 1. After the voxelization is completed, voxel down-sampling is performed on the voxelized first-scale point cloud. , determine the second scale point cloud; perform upsampling and division processing on the second scale point cloud, and determine m groups of upsampled voxels; predict the occupancy probability of the m groups of upsampled voxels in sequence, and determine the m group of occupancy probabilities. According to m The group occupancy probability determines the respective occupancy symbols of the m groups, as the data that needs to be entropy encoded, thereby replacing the octree allocation and surface fitting processes in Figure 1. The coding process in this embodiment of the present application may adopt the arithmetic coding method in Figure 1, such as entropy coding. The m groups of respective occupancy symbols are encoded through the arithmetic coding process, the occupancy indication information corresponding to the first scale point cloud is determined, and the geometry bit stream (code stream) is written.

本申請實施例的解碼方法,可以應用於如圖2所示的G-PCC的幾何資訊解碼流程中,透過解析幾何位元流,確定第一尺度點雲對應的佔用指示資訊;確定第二尺度點雲,並對第二尺度點雲進行上採樣與劃分處理,確定m組上採樣體素;其中,第二尺度點雲為第一尺度點雲對應的前一個已解碼的點雲資料;對m組上採樣體素依次進行佔用概率預測,確定m組佔用概率,並透過m組佔用概率對佔用指示資訊進行解碼,確定m組各自的佔用符號。本申請實施例的編碼過程可以採用圖2中的算術解碼方法,如熵解碼。在算術解碼之後,無需圖2中八叉樹合成和表面擬合的處理,在重建幾何過程中直接基於m組佔用符號,確定第一尺度點雲對應的重建幾何資料。The decoding method of the embodiment of the present application can be applied to the geometric information decoding process of G-PCC as shown in Figure 2. By analyzing the geometric bit stream, the occupancy indication information corresponding to the first scale point cloud is determined; the second scale is determined point cloud, and perform upsampling and division processing on the second-scale point cloud to determine m groups of upsampled voxels; among them, the second-scale point cloud is the previous decoded point cloud data corresponding to the first-scale point cloud; for M groups of upsampled voxels are sequentially predicted for occupancy probabilities to determine m groups of occupancy probabilities, and the occupancy indication information is decoded through the m groups of occupancy probabilities to determine the respective occupancy symbols of the m groups. The encoding process in this embodiment of the present application may adopt the arithmetic decoding method in Figure 2, such as entropy decoding. After arithmetic decoding, there is no need for the processing of octree synthesis and surface fitting in Figure 2. In the process of reconstructing the geometry, the reconstructed geometry data corresponding to the first-scale point cloud is determined directly based on m groups of occupied symbols.

需要說明的是,本申請實施例的編碼方法與解碼方法也可以用於G-PCC之外的其他點雲編碼和解碼流程中。It should be noted that the encoding method and decoding method in the embodiment of the present application can also be used in other point cloud encoding and decoding processes besides G-PCC.

下面說明本申請實施例提供的應用於編碼器的編碼方法。The following describes the encoding method applied to the encoder provided by the embodiment of the present application.

參見圖3,圖3是本申請實施例提供的編碼方法的一個可選的流程示意圖,將結合圖3示出的步驟進行說明。由於本申請實施例提供的編碼方法應用於圖1生成幾何位元流的過程,以下實施例中的第一尺度點雲、第二尺度點雲等,具體是指第一尺度點雲的幾何資訊、第二尺度點雲的幾何資訊等。Referring to Figure 3, Figure 3 is an optional flow diagram of the encoding method provided by the embodiment of the present application, which will be described in conjunction with the steps shown in Figure 3. Since the encoding method provided by the embodiments of the present application is applied to the process of generating a geometric bit stream in Figure 1, the first-scale point cloud, second-scale point cloud, etc. in the following embodiments specifically refer to the geometric information of the first-scale point cloud. , geometric information of second-scale point clouds, etc.

S101、對第一尺度點雲進行體素下採樣,確定第二尺度點雲。S101. Perform voxel downsampling on the first-scale point cloud to determine the second-scale point cloud.

本申請實施例中,編碼器對第一尺度點雲進行體素下採樣之前,需要完成對第一尺度點雲的體素化,以透過體素網格的形式來表示第一尺度點雲。In the embodiment of the present application, before the encoder performs voxel downsampling on the first-scale point cloud, it needs to complete voxelization of the first-scale point cloud to represent the first-scale point cloud in the form of a voxel grid.

本申請實施例中,對於體素化過程,點雲中的一個點可以對應一個被佔用的體素(即非空體素),而未被佔用的體素(即空體素)表示該體素位置上沒有落入點雲中的點。在一些實施例中,可以將被佔用的體素標記為1,將未被佔用的體素標記為0。如此,體素化後的點雲可以透過體素網格中,各個位置上體素的佔用符號,來表示點雲的幾何資料。In the embodiment of the present application, for the voxelization process, a point in the point cloud can correspond to an occupied voxel (i.e., a non-empty voxel), and an unoccupied voxel (i.e., an empty voxel) represents the volume. There are no points falling into the point cloud at the prime position. In some embodiments, occupied voxels may be marked as 1 and unoccupied voxels may be marked as 0. In this way, the voxelized point cloud can represent the geometric data of the point cloud through the occupancy symbols of voxels at various positions in the voxel grid.

本申請實施例中,編碼器對體素化的第一尺度點雲進行體素下採樣,得到第二尺度點雲。在一些實施例中,編碼器可以透過池化的方式實現體素下採樣,如採用步長為 最大池化層,將第一尺度點雲的8個體素合併為第二尺度點雲中的1個體素,每次下採樣將點雲在三個維度上的尺寸均縮小為原來的一半。這樣,第一尺度點雲相對第二尺度點雲可以稱為高尺度點雲,第二尺度點雲相對第一尺度點雲可以稱為低尺度點雲。 In the embodiment of the present application, the encoder performs voxel downsampling on the voxelized first-scale point cloud to obtain a second-scale point cloud. In some embodiments, the encoder can implement voxel downsampling through pooling, such as using a stride of The maximum pooling layer merges 8 voxels of the first-scale point cloud into 1 voxel of the second-scale point cloud. Each downsampling reduces the size of the point cloud in three dimensions to half of the original size. In this way, the first-scale point cloud can be called a high-scale point cloud relative to the second-scale point cloud, and the second-scale point cloud can be called a low-scale point cloud relative to the first-scale point cloud.

請參見圖4,圖中作為第一尺度點雲的示例的是一個包括 個體素的尺度p點雲,經一次體素下採樣後,得到的第二尺度點雲即尺度p-1點雲中包括 個體素。點雲中被佔用的體素用實的立方塊表示,代表有點雲中的點所在的位置。點雲中未被佔用的體素用空的立方塊表示,代表有點雲中沒有點所在的位置。如圖4所示,尺度p點雲朝向紙面一側有6個體素被佔用,相應的佔用符號如圖5A所示,體素的佔用符號為1表示該體素被佔用,為0表示該體素未被佔用。經過體素下採樣之後,尺度p-1點雲對應的4個體素中有3個體素被佔用,1個體素未被佔用,相應的佔用符號如圖5B所示。但圖4的點雲僅僅是示例性的,實際的點雲可以包括更多的體素。 Please refer to Figure 4, which as an example of a first-scale point cloud is a The voxel scale p point cloud, after one voxel downsampling, the second scale point cloud obtained, that is, the scale p-1 point cloud includes voxels. The occupied voxels in the point cloud are represented by solid cubes, which represent the locations of the points in the point cloud. Unoccupied voxels in the point cloud are represented by empty cubes, representing locations where there are no points in the point cloud. As shown in Figure 4, there are 6 voxels occupied on the side of the scale p point cloud facing the paper. The corresponding occupancy symbols are shown in Figure 5A. The occupancy symbol of the voxel is 1, which means that the voxel is occupied, and 0, which means that the volume is occupied. The element is not occupied. After voxel downsampling, 3 of the 4 voxels corresponding to the scale p-1 point cloud are occupied and 1 voxel is unoccupied. The corresponding occupancy symbols are shown in Figure 5B. However, the point cloud in Figure 4 is only exemplary, and the actual point cloud may include more voxels.

S102、對第二尺度點雲進行上採樣與劃分處理,確定m組上採樣體素。S102. Perform upsampling and division processing on the second scale point cloud, and determine m groups of upsampled voxels.

本申請實施例中,編碼器對第二尺度點雲進行上採樣處理,將第二尺度點雲上採樣至第一尺度。可理解,由於第二尺度低於第一尺度,第二尺度點雲在進行上採樣時,會得到一個第二尺度的體素對應的多個上採樣體素,多個上採樣體素的每個上採樣體素中是否包含了點雲中的點,也即是否被佔用需要透過之後佔用概率預測的過程進行預測。這裡,編碼器對透過上採樣得到的各個上採樣體素進行劃分處理,確定m組上採樣體素,以基於分組的形式進行後續的預測處理。其中,m為大於或等於1的整數。In the embodiment of the present application, the encoder performs upsampling processing on the second scale point cloud, and upsamples the second scale point cloud to the first scale. It can be understood that since the second scale is lower than the first scale, when the second scale point cloud is upsampled, multiple upsampled voxels corresponding to one second scale voxel will be obtained, and each of the multiple upsampled voxels will be obtained. Whether each upsampled voxel contains points in the point cloud, that is, whether it is occupied, needs to be predicted through the subsequent occupancy probability prediction process. Here, the encoder divides each upsampled voxel obtained through upsampling, determines m groups of upsampled voxels, and performs subsequent prediction processing in a group-based form. Among them, m is an integer greater than or equal to 1.

本申請實施例中,編碼器對第二尺度點雲進行上採樣處理後,對上採樣得到的第一尺度的上採樣體素進行編號與分組,以根據編號實現劃分處理,得到m組上採樣體素。In the embodiment of the present application, after the encoder performs upsampling processing on the second scale point cloud, the upsampled voxels of the first scale obtained by the upsampling are numbered and grouped to implement division processing according to the numbering, and m groups of upsampling are obtained. voxels.

在一些實施例中,基於圖3,如圖6所示,S102可以透過執行S1021-S1022來實現,如下:In some embodiments, based on Figure 3, as shown in Figure 6, S102 can be implemented by executing S1021-S1022, as follows:

S1021、對第二尺度點雲進行體素上採樣,確定第一尺度的n個上採樣體素;n為大於1的整數。S1021. Perform voxel upsampling on the second scale point cloud, and determine n upsampled voxels of the first scale; n is an integer greater than 1.

S1022、對n個上採樣體素中的每個上採樣體素進行編號,並基於每個上採樣體素對應的編號進行分組,確定m組上採樣體素。S1022. Number each of the n upsampled voxels, group them based on the number corresponding to each upsampled voxel, and determine m groups of upsampled voxels.

在一些實施例中,基於圖6,如圖7所示,S1022可以透過S201-S202來實現,如下:In some embodiments, based on Figure 6, as shown in Figure 7, S1022 can be implemented through S201-S202, as follows:

S201、對n個上採樣體素中的每個上採樣體素進行編號,確定每個上採樣體素對應的編號。S201. Number each upsampled voxel among the n upsampled voxels, and determine the number corresponding to each upsampled voxel.

本申請實施例中,編碼器可以根據一個第二尺度點雲中的體素在上採樣後對應的體素的數量,確定編號範圍;利用編號範圍,在第二尺度點雲上採樣得到的n個上採樣體素中,對第二尺度點雲中每個體素在n個上採樣體素中對應的多個上採樣體素進行相同方式的編號,得到每個上採樣體素對應的編號。In the embodiment of this application, the encoder can determine the numbering range based on the number of voxels corresponding to the voxels in a second-scale point cloud after upsampling; using the numbering range, n number of voxels obtained by sampling on the second-scale point cloud In upsampling voxels, multiple upsampled voxels corresponding to each voxel in the second scale point cloud among the n upsampled voxels are numbered in the same manner to obtain the number corresponding to each upsampled voxel.

S202、根據每個上採樣體素的編號,對n個上採樣體素進行分組,確定m組上採樣體素。S202. Group n upsampled voxels according to the number of each upsampled voxel, and determine m groups of upsampled voxels.

在一些實施例中,在n個上採樣體素中,編碼器可以根據每個上採樣體素的編號,將編號相同的上採樣體素劃分為一組,確定m組上採樣體素。In some embodiments, among n upsampled voxels, the encoder can divide upsampled voxels with the same number into a group according to the number of each upsampled voxel, and determine m groups of upsampled voxels.

在一些實施例中,編碼器也可以在用於標記上採樣體素的編號中,確定至少兩個連續編號;並根據每個上採樣體素的編號,將至少兩個連續編號在n個上採樣體素中對應的上採樣體素作為一組,確定m組上採樣體素。In some embodiments, the encoder may also determine at least two consecutive numbers among the numbers used to mark the upsampled voxels; and based on the number of each upsampled voxel, assign at least two consecutive numbers to n The corresponding upsampled voxels in the sampled voxels are treated as a group, and m groups of upsampled voxels are determined.

在一些實施例中,如圖8所示,對尺度p-1點雲即第二尺度點雲,進行 的上採樣後得到尺度p的n(n=24)個上採樣體素,即第一尺度的n個上採樣體素。可以看出,尺度p-1點雲的一個體素在上採樣後對應尺度p的8個體素,則可以確定編號範圍為1-8。對於尺度p-1點雲中的一個體素,利用編號1-8分別對該體素在尺度p點雲中的對應的8個上採樣體素進行編號;對於尺度p-1點雲中的三個體素,利用相同的編號方式對每個p-1尺度點雲中的體素對應的8個上採樣體素進行編號,得到3個編號1的上採樣體素、3個編號2的上採樣體素…,至3個編號8的上採樣體素。編碼器根據每個上採樣體素的編號進行分組,圖8中示出了3種可選的分組方式,如下: In some embodiments, as shown in Figure 8, for the scale p-1 point cloud, that is, the second scale point cloud, After upsampling, n (n=24) upsampled voxels of scale p are obtained, that is, n upsampled voxels of the first scale. It can be seen that one voxel of the scale p-1 point cloud corresponds to 8 voxels of the scale p after upsampling, and the number range can be determined to be 1-8. For a voxel in the scale p-1 point cloud, use the numbers 1-8 to number the corresponding 8 upsampled voxels of the voxel in the scale p point cloud; for the scale p-1 point cloud Three voxels, use the same numbering method to number the 8 upsampled voxels corresponding to the voxels in each p-1 scale point cloud, and obtain 3 upsampled voxels numbered 1 and 3 upsampled voxels numbered 2. Sample voxels..., to 3 upsampled voxels numbered 8. The encoder groups each upsampled voxel according to its number. Figure 8 shows three optional grouping methods, as follows:

第一種分組方式:將編號相同的上採樣體素劃分為一組;示例性地,將每個編號1的上採樣體素分為一組,將每個編號2的上採樣體素分為一組,以此類推,得到8組上採樣體素作為m組上採樣體素。The first grouping method: divide upsampled voxels with the same number into one group; for example, group each upsampled voxel numbered 1 into one group, and divide each upsampled voxel numbered 2 into One group, and so on, get 8 groups of upsampled voxels as m groups of upsampled voxels.

第二種分組方式:確定編號1和編號2為連續編號、以及編號3和編號4為連續編號,以及編號5至編號8為連續編號;將編號1和編號2對應的上採樣體素作為一組,將編號3和編號4對應的上採樣體素作為一組,將編號5至編號8對應的上採樣體素作為一組,得到3組上採樣體素作為m組上採樣體素。The second grouping method: Determine number 1 and number 2 as consecutive numbers, number 3 and number 4 as consecutive numbers, and number 5 to number 8 as consecutive numbers; use the upsampled voxels corresponding to number 1 and number 2 as a Group, the upsampled voxels corresponding to numbers 3 and 4 are taken as a group, the upsampled voxels corresponding to numbers 5 to 8 are taken as a group, and 3 groups of upsampled voxels are obtained as m groups of upsampled voxels.

第三種分組方式:將n個上採樣體素全部作為一組,相當於將編號1-8確定為連續編號,得到1組上採樣體素作為m組上採樣體素。The third grouping method: treating all n upsampled voxels as a group is equivalent to determining the numbers 1-8 as consecutive numbers, and obtaining 1 group of upsampled voxels as m groups of upsampled voxels.

S103、對m組上採樣體素依次進行佔用概率預測,確定m組佔用概率,根據m組佔用概率確定m組各自的佔用符號。S103. Predict the occupancy probabilities of the m groups of upsampled voxels in sequence, determine the m groups of occupancy probabilities, and determine the respective occupancy symbols of the m groups according to the m groups of occupancy probabilities.

本申請實施例中,編碼器基於確定的m組上採樣體素,可以以遞進的方式,對m組上採樣體素依次進行佔用概率預測。在預測當前組上採樣體素的佔用概率時,利用之前已預測的一組或多組上採樣體素的預測結果(如佔用概率對應的佔用符號),對當前組上採樣體素的佔用概率進行預測,確定當前組上採樣體素對應的佔用概率;直至確定m組佔用概率,根據m組佔用概率確定m組各自的佔用符號。In the embodiment of the present application, based on the determined m groups of upsampled voxels, the encoder can sequentially predict the occupancy probability of the m groups of upsampled voxels in a progressive manner. When predicting the occupancy probability of the current group of upsampled voxels, the previously predicted prediction results of one or more groups of upsampled voxels (such as the occupancy symbols corresponding to the occupancy probability) are used to predict the occupancy probability of the current group of upsampled voxels. Prediction is made to determine the occupancy probability corresponding to the current group of upsampled voxels; until the m group of occupancy probabilities are determined, the respective occupancy symbols of the m groups are determined based on the m group of occupancy probabilities.

在一些實施例中,基於圖3、圖6、或圖7中的任一個,如圖9所示,S103可以透過執行S1031-S1034來實現,如下:In some embodiments, based on any one of Figure 3, Figure 6, or Figure 7, as shown in Figure 9, S103 can be implemented by executing S1031-S1034, as follows:

S1031、在m組上採樣體素中,對第1組上採樣體素進行佔用概率預測,確定第一組佔用概率,並利用預設佔用符表示第一組佔用概率,確定第一組佔用符號。S1031. In the m group of upsampled voxels, predict the occupancy probability of the first group of upsampled voxels, determine the first group of occupancy probabilities, use the preset occupancy symbols to represent the first group of occupancy probabilities, and determine the first group of occupancy symbols. .

本申請實施例中,第1組上採樣體素之前沒有已預測的其他組上採樣體素的預測結果,故,編碼器可以直接對m組上採樣體素中的第1組上採樣體素進行佔用概率預測,確定第一組佔用概率。並且,利用預設佔用符表示第一組佔用概率,也即對第一組佔用概率進行佔用符標識,以對第一組佔用概率所表徵的對應體素是否被佔用的情況進行區分,確定第一組佔用符號。In the embodiment of the present application, the first group of upsampled voxels does not have the prediction results of other groups of upsampled voxels that have been predicted before. Therefore, the encoder can directly perform the first group of upsampled voxels in the m groups of upsampled voxels. Carry out occupancy probability prediction and determine the first set of occupancy probabilities. Moreover, the preset occupancy symbols are used to represent the first group of occupancy probabilities, that is, the first group of occupancy probabilities are identified by the occupancy symbols, so as to distinguish whether the corresponding voxels represented by the first group of occupancy probabilities are occupied, and determine the first group of occupancy probabilities. A set of occupancy symbols.

S1032、在i大於1且小於或等於m時,利用已完成概率預測與佔用符表示的至少k組上採樣體素對應的至少k組佔用符號,對第i組上採樣體素進行佔用概率預測,確定第i組佔用概率;其中,i為整數,k為大於或等於1且小於i的整數。S1032. When i is greater than 1 and less than or equal to m, use the completed probability prediction and at least k groups of occupancy symbols corresponding to at least k groups of upsampled voxels represented by the occupancy symbols to predict the occupancy probability of the i-th group of upsampled voxels. , determine the occupancy probability of the i-th group; where i is an integer, and k is an integer greater than or equal to 1 and less than i.

本申請實施例中,在i大於1且小於或等於m時,也即對於m組上採樣體素中的第2組至第m組上採樣體素,編碼器在對第2組至第m組上採樣體素中的第i組上採樣體素進行佔用概率預測時,利用已完成概率預測與佔用符表示的至少k組上採樣體素對應的至少k組佔用符號,對第i組上採樣體素進行佔用概率預測,確定第i組佔用概率。In the embodiment of the present application, when i is greater than 1 and less than or equal to m, that is, for the second to mth group of upsampled voxels in the m group of upsampled voxels, the encoder When predicting occupancy probability for the i-th group of up-sampled voxels in the group of up-sampled voxels, at least k groups of occupancy symbols corresponding to at least k groups of up-sampled voxels represented by the completed probability prediction and occupancy symbols are used to predict the i-th group of up-sampled voxels. Sampling voxels are used to predict the occupancy probability and determine the occupancy probability of the i-th group.

在一些實施例中,編碼器可以對第i組上採樣體素進行特徵提取,確定第i組體素特徵;確定已完成概率預測與佔用符表示的第i-k組佔用符號至第i-1組佔用符號為至少k組佔用符號;根據至少k組佔用符號,結合第i組體素特徵,對第i組上採樣體素中每個上採樣體素進行佔用概率預測,確定第i組上採樣體素中每個上採樣體素對應的佔用概率為第i組佔用概率。In some embodiments, the encoder can perform feature extraction on the i-th group of upsampled voxels to determine the i-th group of voxel features; determine the i-kth group of occupancy symbols to the i-1th group that have completed probability prediction and occupancy symbol representation The occupancy symbols are at least k groups of occupancy symbols; based on at least k groups of occupancy symbols and combined with the characteristics of the i-th group of voxels, the occupancy probability is predicted for each upsampled voxel in the i-th group of upsampled voxels, and the i-th group of upsampling is determined The occupancy probability corresponding to each upsampled voxel in the voxel is the i-th group occupancy probability.

在一些實施例中,編碼器可以將第i組上採樣體素之前,已完成概率預測與佔用符表示的全部上採樣體素組對應的佔用符號作為至少k組佔用符號;也可以是第i組上採樣體素之前,最近的已完成概率預測與佔用符表示的至少k組佔用符號,具體的根據實際情況進行選擇,本申請實施例不作限定。In some embodiments, the encoder may use the occupancy symbols corresponding to all upsampled voxel groups represented by the occupancy symbols that have completed probability prediction before the i-th group of upsampled voxels as at least the k group of occupancy symbols; it may also be the i-th group of upsampled voxels. Before the group of upsampled voxels, there are at least k groups of occupancy symbols represented by the most recent completed probability prediction and occupancy symbols. The specific selection is based on the actual situation and is not limited in the embodiment of this application.

S1033、利用預設佔用符表示第i組佔用概率,確定第i組佔用符號。S1033. Use the preset occupancy symbols to represent the occupancy probability of the i-th group, and determine the occupancy symbols of the i-th group.

本申請實施例中,編碼器基於得到的第i組佔用概率,利用預設佔用符中的第一佔用符號,表示第i組佔用概率中大於或等於預設概率閾值的佔用概率;並利用預設佔用符中的第二佔用符號,表示第i組佔用概率中小於預設概率閾值的佔用概率,從而確定出第i組佔用符號。In the embodiment of the present application, the encoder uses the first occupancy symbol in the preset occupancy symbol to represent the occupancy probability in the i-th group of occupancy probabilities that is greater than or equal to the preset probability threshold based on the obtained i-th group occupancy probability; and uses the preset occupancy symbol. Assume that the second occupancy symbol in the occupancy symbol represents the occupancy probability of the i-th group of occupancy probabilities that is less than the preset probability threshold, thereby determining the i-th group of occupancy symbols.

示例性地,預設概率閾值可以為90%,預設佔用符可以包含0和1。若第i組佔用概率中某個上採樣體素的佔用概率大於或等於預設概率閾值,說明該上採樣體素中包含點雲中點的概率較大,則利用1表示該佔用概率,並使預設佔用符1對應於該佔用概率對應的上採樣體素。For example, the preset probability threshold may be 90%, and the preset occupiers may include 0 and 1. If the occupancy probability of an upsampled voxel in the i-th group of occupancy probabilities is greater than or equal to the preset probability threshold, it means that the upsampled voxel has a greater probability of containing the point cloud midpoint, and 1 is used to represent the occupancy probability, and Let the preset occupancy symbol 1 correspond to the upsampled voxel corresponding to the occupancy probability.

需要說明的是,S1031中利用預設佔用符表示第一組佔用概率,確定第一組佔用符號的過程與S1033中利用預設佔用符表示第i組佔用概率,確定第i組佔用符號的方法是一致的。It should be noted that the process of using preset occupancy characters to represent the first group of occupancy probabilities and determining the first group of occupied symbols in S1031 is the same as the method of using the preset occupancy characters to represent the i-th group of occupancy probability and determining the i-th group of occupied symbols in S1033. are consistent.

S1034、利用包含第i組佔用符號的至少k組佔用符號,繼續對第i+1組上採樣體素進行佔用概率預測與佔用符表示,直至確定m組各自的佔用符號。S1034. Using at least k groups of occupancy symbols including the i-th group of occupancy symbols, continue to perform occupancy probability prediction and occupancy symbol representation on the i+1 group of upsampled voxels until the respective occupancy symbols of the m groups are determined.

本申請實施例中,編碼器在佔用概率預測與佔用符表示過程中,利用包含第i組佔用符號的至少k組佔用符號,示例性地,上述得到第1組佔用符號至第i組佔用符號,繼續對第i+1組上採樣體素進行佔用概率預測與佔用符表示,得到第i+1組上採樣體素對應的第i+1組佔用符號。如此繼續依次遞進地進行佔用概率預測與佔用符表示,直至確定m組各自的佔用符號。In the embodiment of the present application, in the process of occupancy probability prediction and occupancy symbol representation, the encoder uses at least k groups of occupancy symbols including the ith group of occupancy symbols. For example, the above-mentioned occupancy symbols from the 1st group to the ith group of occupancy symbols are obtained , continue to perform occupancy probability prediction and occupancy symbol representation on the i+1th group of upsampled voxels, and obtain the i+1th group of occupancy symbols corresponding to the i+1th group of upsampled voxels. The occupancy probability prediction and occupancy symbol representation are continued in this manner until m groups of respective occupancy symbols are determined.

在一些實施例中,上述S1021-S1022,以及S1031-S1034的過程可以透過概率預測模型來實現。這裡,概率預測模型是一個訓練好的深度學習網路,用於執行特徵提取、上採樣和概率預測處理。示例性地,以圖4所示的第二尺度點雲(尺度p-1點雲)的示例,可以將圖5B所示的佔用符號的序列輸入該概率預測模型,進行特徵提取、上採樣和佔用概率預測。對於低尺度點雲(即第二尺度點雲)中未被佔用的體素(如圖5B中標記為0的體素),其上採樣得到的高尺度(即第一尺度)的多個上採樣體素也是未被佔據的,不需要進行概率預測。而對低尺度點雲中被佔用的體素進行上採樣得到的高尺度的多個體素需要進行預測。以 方式的上採樣為例,圖5B的1個尺度p-1體素會分解為尺度p的8個上採樣體素,這8個上採樣體素是否被佔用是不確定的,均需要進行佔用概率預測。佔用概率預測的過程可以如圖10所示,如下: In some embodiments, the above-mentioned processes of S1021-S1022 and S1031-S1034 can be implemented through a probabilistic prediction model. Here, the probabilistic prediction model is a trained deep learning network that performs feature extraction, upsampling, and probabilistic prediction processing. Illustratively, taking the example of the second scale point cloud (scale p-1 point cloud) shown in Figure 4, the sequence of occupied symbols shown in Figure 5B can be input into the probability prediction model to perform feature extraction, upsampling and Occupancy probability prediction. For unoccupied voxels in the low-scale point cloud (i.e., the second-scale point cloud) (voxels marked as 0 in Figure 5B), multiple upsampling of the high-scale (i.e., the first scale) The sampled voxels are also unoccupied and do not require probabilistic predictions. The high-scale multiple voxels obtained by upsampling the occupied voxels in the low-scale point cloud need to be predicted. by Taking the method of upsampling as an example, one voxel of scale p-1 in Figure 5B will be decomposed into 8 upsampled voxels of scale p. It is uncertain whether these 8 upsampled voxels are occupied, and they all need to be occupied. Probabilistic predictions. The process of occupancy probability prediction can be shown in Figure 10, as follows:

圖10中,尺度p-1點雲表示第二尺度點雲,概率預測模型透過卷積神經網路(Convolution Neural Network,CNN)對尺度p-1點雲進行上採樣,得到第一尺度,也即尺度p的n(n=24)個上採樣體素。其中,每個尺度p-1的體素對應尺度p的8個上採樣體素。在24個上採樣體素中,編碼器利用編號1-8,對每個尺度p-1體素分解得到的8個上採樣體素進行一一編號,得到24個上採樣體素中每個上採樣體素對應的編號。概率預測模型將編號相同的上採樣體素作為一組,得到8組上採樣體素,進入佔用概率預測過程。In Figure 10, the scale p-1 point cloud represents the second scale point cloud. The probability prediction model uses a convolutional neural network (Convolution Neural Network, CNN) to upsample the scale p-1 point cloud to obtain the first scale, also That is, n (n=24) upsampled voxels of scale p. Among them, each voxel at scale p-1 corresponds to 8 upsampled voxels at scale p. Among the 24 upsampled voxels, the encoder uses the numbers 1-8 to number the 8 upsampled voxels obtained by decomposing p-1 voxels at each scale one by one to obtain each of the 24 upsampled voxels. The number corresponding to the upsampled voxel. The probabilistic prediction model groups upsampled voxels with the same number as a group, resulting in 8 groups of upsampled voxels, and enters the occupancy probability prediction process.

在佔用概率預測過程的第1階段,概率預測模型利用CNN網路,對第1組上採樣體素進行預測,得到第1組上採樣體素中每個上採樣體素對應的佔用概率。概率預測模型根據第1組上採樣體素中每個上採樣體素對應的佔用概率進行佔用符表示,得到第1組上採樣體素中每個上採樣體素對應的佔用符號。In the first stage of the occupancy probability prediction process, the probability prediction model uses the CNN network to predict the first group of upsampled voxels, and obtains the occupancy probability corresponding to each upsampled voxel in the first group of upsampled voxels. The probabilistic prediction model performs occupancy symbol representation based on the occupancy probability corresponding to each upsampled voxel in the first group of upsampled voxels, and obtains the occupancy symbol corresponding to each upsampled voxel in the first group of upsampled voxels.

如圖10所示,在佔用概率預測過程的第2階段,結合第1階段得到的第1組上採樣體素中每個上採樣體素對應的佔用符號,對於第2組上採樣體素進行佔用概率預測與佔用符表示,得到第2組上採樣體素中每個上採樣體素對應的佔用符號。在佔用概率預測過程的第3階段,結合第1階段得到的第1組上採樣體素中每個上採樣體素對應的佔用符號,以及第2階段得到的第2組上採樣體素中每個上採樣體素對應的佔用符號,對於第3組上採樣體素進行佔用概率預測與佔用符表示,得到第3組上採樣體素中每個上採樣體素對應的佔用符號。以此類推,直至得到第8組上採樣體素中每個上採樣體素對應的佔用符號。如此,可以利用得到的8組上採樣體素中每個上採樣體素對應的佔用符號,得到第一尺度點雲,即尺度p點雲的幾何訊息。這樣,透過從低尺度向高尺度採樣,恢復出高尺度點雲中的體素,再透過分組與佔用概率預測,預測各個高尺度體素中包含點雲中的點的佔用概率,並根據佔用概率以預設佔用符號標記各個高尺度體素,從而預測得到高尺度點雲的幾何資料。As shown in Figure 10, in the second stage of the occupancy probability prediction process, combined with the occupancy symbols corresponding to each upsampled voxel in the first group of upsampled voxels obtained in the first stage, the second group of upsampled voxels are Occupancy probability prediction and occupancy symbol representation are used to obtain the occupancy symbol corresponding to each upsampled voxel in the second group of upsampled voxels. In the third stage of the occupancy probability prediction process, the occupancy symbols corresponding to each upsampled voxel in the first group of upsampled voxels obtained in the first stage are combined with the occupancy symbols corresponding to each upsampled voxel in the second group of upsampled voxels obtained in the second stage. For the occupancy symbols corresponding to the upsampled voxels, the occupancy probability prediction and occupancy symbol representation are performed for the third group of upsampled voxels, and the occupancy symbols corresponding to each upsampled voxel in the third group of upsampled voxels are obtained. By analogy, the occupancy symbol corresponding to each upsampled voxel in the 8th group of upsampled voxels is obtained. In this way, the occupancy symbol corresponding to each upsampled voxel in the obtained eight groups of upsampled voxels can be used to obtain the geometric information of the first scale point cloud, that is, the scale p point cloud. In this way, by sampling from low scale to high scale, the voxels in the high-scale point cloud are recovered, and then through grouping and occupancy probability prediction, the occupancy probability of the points in the point cloud contained in each high-scale voxel is predicted, and based on the occupancy The probability is to mark each high-scale voxel with a preset occupancy symbol, thereby predicting the geometric data of the high-scale point cloud.

在一些實施例中,透過上述8個階段預測得到的24個上採樣體素中各個上採樣體素對應的佔用概率可以如圖11所示,圖11中示出了尺度p的24個上採樣體素中,朝向紙面一側的各個上採樣體素對應的佔用概率。圖11中的預測概率僅僅為了方便說明,不能理解為實際運算的結果。可以看出,如果對實際被佔用的體素預測得到的佔用概率越接近於1,而對實際未被佔用的體素預測得到的佔用概率越接近於0,則預測越準確。而預測越準確,在根據高尺度點雲中體素的佔用概率確定的佔用符號進行編碼時,得到的編碼資料就越少,也即概率預測越準確,對點雲幾何資訊的壓縮性能就越好。In some embodiments, the occupancy probability corresponding to each of the 24 upsampled voxels predicted through the above eight stages can be shown in Figure 11. Figure 11 shows 24 upsampled voxels of scale p. Among the voxels, the occupancy probability corresponding to each upsampled voxel facing the side of the paper. The predicted probabilities in Figure 11 are only for convenience of explanation and cannot be understood as the results of actual calculations. It can be seen that if the occupancy probability predicted for the actually occupied voxels is closer to 1, and the occupancy probability predicted for the actual unoccupied voxels is closer to 0, the prediction is more accurate. The more accurate the prediction, the less coding data will be obtained when encoding occupancy symbols determined based on the occupancy probability of voxels in high-scale point clouds. That is, the more accurate the probability prediction, the better the compression performance of point cloud geometric information. good.

S104、對m組各自的佔用符號進行編碼,確定第一尺度點雲對應的佔用指示資訊,並將佔用指示資訊寫入碼流。S104. Encode the respective occupancy symbols of the m groups, determine the occupancy indication information corresponding to the first scale point cloud, and write the occupancy indication information into the code stream.

本申請實施例中,編碼器可以對m組各自的佔用符號中每組佔用符進行熵編碼,確定編碼得到的m組佔用指示資訊為第一尺度點雲對應的佔用指示資訊。In the embodiment of the present application, the encoder can perform entropy coding on each group of m groups of occupancy symbols, and determine that the m groups of coded occupancy indication information are the occupancy indication information corresponding to the first scale point cloud.

本申請實施例中,高尺度點雲中體素是否被佔用可以透過佔用符號表示,沒有進行佔用概率預測的體素可以將佔用符號直接置0。編碼器對m組各自的佔用符號,如m組佔用符號的序列進行編碼,得到第一尺度點雲對應的第一編碼資料,也即第一尺度點雲對應的佔用指示資訊,從而實現了高尺度點雲的幾何資料的無失真壓縮。In the embodiment of this application, whether a voxel in a high-scale point cloud is occupied can be represented by an occupancy symbol, and the occupancy symbol can be directly set to 0 for voxels that do not have occupancy probability prediction. The encoder encodes m groups of respective occupancy symbols, such as a sequence of m groups of occupancy symbols, and obtains the first encoded data corresponding to the first scale point cloud, that is, the occupancy indication information corresponding to the first scale point cloud, thereby achieving high-level Distortionless compression of geometric data from scaled point clouds.

在一些實施例中,熵編碼可以採用自我調整上下文的二進位算術編碼(CABAC:Context-based Adaptive Binary Arithmetic Coding)演算法,但不局限於此。根據熵編碼的原理,對佔用概率的預測越准,則資訊熵越小,實際碼率和頻寬就越節省。如此,編碼器將第一尺度點雲對應的佔用指示資訊寫入碼流,發送至解碼器,由解碼器提取出第一尺度點雲對應的佔用指示資訊,結合之前已解碼的低尺度點雲的幾何資料(如第二尺度點雲),送入熵解碼器,就可以重建無損的高尺度點雲的幾何資料,也即重建第一尺度點雲對應的重建幾何資料。In some embodiments, the entropy encoding may use a Context-based Adaptive Binary Arithmetic Coding (CABAC) algorithm, but is not limited thereto. According to the principle of entropy coding, the more accurate the prediction of occupancy probability is, the smaller the information entropy will be, and the actual code rate and bandwidth will be saved. In this way, the encoder writes the occupancy indication information corresponding to the first-scale point cloud into the code stream and sends it to the decoder. The decoder extracts the occupancy indication information corresponding to the first-scale point cloud and combines it with the previously decoded low-scale point cloud. The geometric data (such as the second-scale point cloud) is fed into the entropy decoder, and the geometric data of the lossless high-scale point cloud can be reconstructed, that is, the reconstructed geometric data corresponding to the first-scale point cloud can be reconstructed.

可以理解的是,本申請實施例中分組預測與編碼的方式,相較於基於每個體素的父節點和鄰居節點,逐個體素進行佔用概率預測與編碼的方式,一方面極大減小了編碼複雜度,提高了編碼速度與壓縮性能;另一方面,隨著編碼的進行,所有之前已經完成佔用概率預測的上採樣體素組的佔用符號都可以作為上下文資訊,共同輸入到卷積網路中,説明預測當前上採樣體素組的佔據概率,從而提高了佔用預測概率預測的準確性,進而提高了編碼準確性,也即提高了編碼性能。It can be understood that the group prediction and coding method in the embodiment of the present application, compared with the method of predicting and coding the occupancy probability voxel by voxel based on the parent node and neighbor node of each voxel, on the one hand, greatly reduces the coding complexity, improving the encoding speed and compression performance; on the other hand, as the encoding proceeds, the occupancy symbols of all upsampled voxel groups that have previously completed occupancy probability prediction can be used as context information and jointly input to the convolutional network , indicating that the occupancy probability of the current upsampled voxel group is predicted, thereby improving the accuracy of the occupancy prediction probability prediction, thereby improving the coding accuracy, that is, improving the coding performance.

在一些實施例中,編碼器可以以並行的方式,對m組各自的佔用符號進行編碼,從而進一步加快編碼速度,提高編碼效率和編碼性能。In some embodiments, the encoder can encode m groups of respective occupied symbols in a parallel manner, thereby further speeding up the encoding speed and improving encoding efficiency and encoding performance.

可以理解的是,本申請實施例中,透過對第一尺度點雲進行下採樣得到第二尺度點雲,並對第二尺度點雲進行上採樣與劃分處理,將第二尺度點雲上採樣至第一尺度,並將上採樣後的體素劃分為m組,分組依次進行佔用概率預測,得到m組佔用概率。這樣,透過分組預測,加快了佔用概率的預測速度,提高了預測過程的處理效率與編碼效率。如此,對m組佔用概率對應的m組佔用符號進行編碼,確定第一尺度點雲對應的佔用指示資訊寫入碼流,完成對第一尺度點雲的編碼,提高了編碼效率與編碼性能。It can be understood that in the embodiment of the present application, the second scale point cloud is obtained by downsampling the first scale point cloud, and the second scale point cloud is upsampled and divided, and the second scale point cloud is upsampled to In the first scale, the upsampled voxels are divided into m groups, and the occupancy probability predictions are performed on the groups in turn to obtain m groups of occupancy probabilities. In this way, through group prediction, the prediction speed of occupancy probability is accelerated, and the processing efficiency and coding efficiency of the prediction process are improved. In this way, m groups of occupancy symbols corresponding to m groups of occupancy probabilities are encoded, and the occupancy indication information corresponding to the first-scale point cloud is determined and written into the code stream, thereby completing the encoding of the first-scale point cloud and improving coding efficiency and coding performance.

在一些實施例中,圖4與圖10是對第一尺度點雲,如尺度p點雲進行一次下採樣、上採樣與劃分處理、以及佔用概率預測為例的過程。在實際壓縮時,可以對第一尺度點雲進行更多次的下採樣,例如2次、3次、4次或者更多次,以得到多個低尺度下的點雲幾何資料,並基於多個低尺度下的點雲幾何資料進行上採樣與劃分處理、佔用概率預測以及佔用符表示和編碼處理,得到多個尺度對應的佔用指示資訊。In some embodiments, FIG. 4 and FIG. 10 are an example process of performing down-sampling, up-sampling and dividing processing on a first-scale point cloud, such as a scale p point cloud, and predicting occupancy probability. In actual compression, the first-scale point cloud can be down-sampled more times, such as 2 times, 3 times, 4 times or more, to obtain multiple low-scale point cloud geometric data, and based on multiple The point cloud geometry data at a low scale are subjected to upsampling and division processing, occupancy probability prediction, and occupancy symbol representation and coding processing to obtain occupancy indication information corresponding to multiple scales.

在一些實施例中,本申請實施例提供的編碼方法還包括:基於第二尺度點雲進行至少S次體素下採樣,確定第三尺度點雲至第S+2尺度點雲;S為大於或等於1的整數;分別對第三尺度點雲至第S+2尺度點雲進行體素上採樣與劃分處理、並分別對劃分後的分組依次進行佔用概率預測與編碼,確定第二尺度點雲的佔用指示資訊至第S+1尺度點雲的佔用指示資訊。In some embodiments, the encoding method provided by the embodiment of the present application also includes: performing at least S times of voxel downsampling based on the second scale point cloud, and determining the third scale point cloud to the S+2th scale point cloud; S is greater than Or an integer equal to 1; perform voxel upsampling and division processing on the third scale point cloud to the S+2th scale point cloud respectively, and perform occupancy probability prediction and coding on the divided groups in sequence to determine the second scale point The occupancy indication information of the cloud to the occupancy indication information of the S+1th scale point cloud.

在上述實施例中,編碼器在對第一尺度點雲進行兩次及以上的體素下採樣時,可以將每一次體素下採樣前、後的兩個點雲分別作為高尺度點雲和低尺度點雲,按照類似的方式進行劃分處理、佔用概率預測和熵編碼,從而得到第二尺度點雲的佔用指示資訊至第S+1尺度點雲的佔用指示資訊;編碼器將第一尺度點雲的佔用指示資訊、第二尺度點雲的佔用指示資訊至第S+1尺度點雲的佔用指示資訊寫入碼流,發送至解碼器。In the above embodiment, when the encoder performs two or more voxel downsamplings on the first scale point cloud, the two point clouds before and after each voxel downsampling can be used as the high-scale point cloud and the two point clouds respectively. The low-scale point cloud is divided, processed, occupancy probability predicted and entropy encoded in a similar manner to obtain the occupancy indication information of the second scale point cloud to the occupancy indication information of the S+1th scale point cloud; the encoder converts the first scale point cloud into The occupancy indication information of the point cloud, the occupancy indication information of the second scale point cloud and the occupancy indication information of the S+1th scale point cloud are written into the code stream and sent to the decoder.

可以理解的是,本申請實施例提供的編碼方法可以重複應用於多個相鄰尺度之間,且每組相鄰尺度間的編碼相互獨立不依賴,因此可以靈活地實現尺度可伸縮的編碼。It can be understood that the coding method provided by the embodiments of the present application can be repeatedly applied between multiple adjacent scales, and the coding between each group of adjacent scales is independent of each other. Therefore, scale-scalable coding can be flexibly implemented.

下面說明本申請實施例提供的應用於解碼器的解碼方法。The following describes the decoding method applied to the decoder provided by the embodiment of the present application.

參見圖12,圖12是本申請實施例提供的解碼方法的一個可選的流程示意圖,將結合圖12示出的步驟進行說明。由於本申請實施例提供的解碼方法應用於圖2對幾何位元流進行解碼的過程,以下實施例中的第一尺度點雲、第二尺度點雲等,具體是指第一尺度點雲的幾何資訊、第二尺度點雲的幾何資訊等。Referring to Figure 12, Figure 12 is an optional flow diagram of the decoding method provided by the embodiment of the present application, which will be described in conjunction with the steps shown in Figure 12. Since the decoding method provided by the embodiment of the present application is applied to the process of decoding the geometric bit stream in Figure 2, the first-scale point cloud, the second-scale point cloud, etc. in the following embodiments specifically refer to the first-scale point cloud. Geometric information, geometric information of second-scale point clouds, etc.

S401、解析碼流,確定第一尺度點雲對應的佔用指示資訊。S401. Analyze the code stream and determine the occupancy indication information corresponding to the first scale point cloud.

本申請實施例中,解碼器對接收到的碼流進行解析,得到第一尺度點雲對應的第一編碼資料,也即第一尺度點雲對應的佔用指示資訊。In the embodiment of the present application, the decoder analyzes the received code stream to obtain the first encoded data corresponding to the first scale point cloud, that is, the occupancy indication information corresponding to the first scale point cloud.

S402、確定第二尺度點雲,並對第二尺度點雲進行上採樣與劃分處理,確定m組上採樣體素;其中,第二尺度點雲為第一尺度點雲對應的前一個已解碼的點雲資料;m為大於或等於1的整數。S402. Determine the second scale point cloud, perform upsampling and division processing on the second scale point cloud, and determine m groups of upsampled voxels; wherein the second scale point cloud is the previous decoded corresponding to the first scale point cloud. point cloud data; m is an integer greater than or equal to 1.

本申請實施例中,碼流中包含多個尺度點雲的佔用指示資訊,解碼器在解碼時,以從低尺度到高尺度的順序進行解碼。這裡,解碼器在對第一尺度點雲對應的佔用指示資訊進行解碼時,確定第一尺度點雲之前,前一個已解碼的點雲資料為第二尺度點雲;從而以第二尺度點雲作為已解碼的低尺度點雲幾何資料,對第一尺度點雲進行解碼預測與重建。In the embodiment of the present application, the code stream contains occupancy indication information of point clouds of multiple scales. When decoding, the decoder decodes in order from low scale to high scale. Here, when decoding the occupancy indication information corresponding to the first-scale point cloud, the decoder determines that the previously decoded point cloud data before the first-scale point cloud is the second-scale point cloud; thus, the second-scale point cloud is used As the decoded low-scale point cloud geometric data, the first-scale point cloud is decoded, predicted and reconstructed.

在一些實施例中,S402可以透過執行S4021-S4022來實現,如下:In some embodiments, S402 can be implemented by executing S4021-S4022, as follows:

S4021、對第二尺度點雲進行體素上採樣,確定第一尺度的n個上採樣體素;n為大於1的整數。S4021. Perform voxel upsampling on the second scale point cloud, and determine n upsampled voxels of the first scale; n is an integer greater than 1.

S4022、對n個上採樣體素中的每個上採樣體素進行編號,並基於每個上採樣體素對應的編號進行分組,確定m組上採樣體素。S4022. Number each of the n upsampled voxels, group them based on the number corresponding to each upsampled voxel, and determine m groups of upsampled voxels.

這裡,S4021與S4022的過程與編碼方法中的S1021與S1022的過程描述一致,此處不再贅述。Here, the process of S4021 and S4022 is consistent with the description of the process of S1021 and S1022 in the encoding method, and will not be described again here.

在一些實施例中,S4022可以透過執行S501-S502來實現,如下:In some embodiments, S4022 can be implemented by executing S501-S502, as follows:

S501、對n個上採樣體素中的每個上採樣體素進行編號,確定每個上採樣體素對應的編號。S501. Number each upsampled voxel among the n upsampled voxels, and determine the number corresponding to each upsampled voxel.

S502、根據每個上採樣體素的編號,對n個上採樣體素進行分組,確定m組上採樣體素。S502. Group n upsampled voxels according to the number of each upsampled voxel, and determine m groups of upsampled voxels.

在一些實施例中,解碼器可以在n個上採樣體素中,根據每個上採樣體素的編號,將編號相同的上採樣體素劃分為一組,確定m組上採樣體素。或者,也可以確定至少兩個連續編號;根據每個上採樣體素的編號,將至少兩個連續編號在n個上採樣體素中對應的上採樣體素作為一組,確定m組上採樣體素。具體的根據實際情況進行選擇,本申請實施例不作限定。In some embodiments, the decoder may divide the upsampled voxels with the same number into a group according to the number of each upsampled voxel among the n upsampled voxels, and determine m groups of upsampled voxels. Alternatively, at least two consecutive numbers can also be determined; according to the number of each upsampling voxel, the upsampling voxels corresponding to the at least two consecutive numbers in the n upsampling voxels are taken as a group to determine m groups of upsampling voxels. The specific selection is made according to the actual situation, and is not limited by the embodiments of this application.

這裡,S501與S502的過程與編碼方法中的S201與S202的過程描述一致,此處不再贅述。Here, the process of S501 and S502 is consistent with the description of the process of S201 and S202 in the encoding method, and will not be described again here.

可以看出,本申請實施例中,解碼器中進行上採樣與劃分處理的過程與編碼器進行上採樣與劃分處理的過程是相同的。It can be seen that in the embodiment of the present application, the process of upsampling and dividing in the decoder is the same as the process of upsampling and dividing in the encoder.

S403、對m組上採樣體素依次進行佔用概率預測,確定m組佔用概率,並根據m組佔用概率對佔用指示資訊進行解碼,確定m組各自的佔用符號。S403: Predict occupancy probabilities for m groups of upsampled voxels in sequence, determine m groups of occupancy probabilities, decode the occupancy indication information according to m groups of occupancy probabilities, and determine respective occupancy symbols of m groups.

本申請實施例中,解碼器對於得到的m組上採樣體素,以遞進的方式,分組依次進行佔用概率預測,確定m組佔用概率。在預測當前組上採樣體素的佔用概率時,利用之前已預測的一組或多組上採樣體素的預測結果(如佔用概率對應的佔用符號),對當前組上採樣體素的佔用概率進行預測,確定當前組上採樣體素對應的佔用概率;直至確定m組佔用概率,根據m組佔用概率確定m組各自的佔用符號。In the embodiment of the present application, the decoder performs occupancy probability prediction on the obtained m groups of upsampled voxels in a progressive manner, and determines m groups of occupancy probabilities. When predicting the occupancy probability of the current group of upsampled voxels, the previously predicted prediction results of one or more groups of upsampled voxels (such as the occupancy symbols corresponding to the occupancy probability) are used to predict the occupancy probability of the current group of upsampled voxels. Prediction is made to determine the occupancy probability corresponding to the current group of upsampled voxels; until the m group of occupancy probabilities are determined, the respective occupancy symbols of the m groups are determined based on the m group of occupancy probabilities.

在一些實施例中,基於圖12,如圖13所示,S403可以透過執行S4031-S4033來實現,如下:In some embodiments, based on Figure 12, as shown in Figure 13, S403 can be implemented by executing S4031-S4033, as follows:

S4031、在m組上採樣體素中,對第1組上採樣體素進行佔用概率預測,確定第一組佔用概率,並根據第一組佔用概率對佔用指示資訊進行解碼,確定第一組佔用符號。S4031. In the m group of upsampled voxels, predict the occupancy probability of the first group of upsampled voxels, determine the occupancy probability of the first group, and decode the occupancy indication information according to the occupancy probability of the first group to determine the occupancy of the first group. symbol.

S4031中,對第1組上採樣體素進行佔用概率預測,確定第一組佔用概率的過程與編碼方法中的S1031中相應的過程描述一致,此處不再贅述。解碼器根據第一組佔用概率對佔用指示資訊進行解碼,確定第一組佔用符號。In S4031, the occupancy probability is predicted for the first group of upsampled voxels. The process of determining the occupancy probability of the first group is consistent with the corresponding process description in S1031 in the encoding method, and will not be described again here. The decoder decodes the occupancy indication information according to the first group of occupancy probabilities to determine the first group of occupancy symbols.

S4032、在i大於1且小於或等於m時,利用已解碼的至少k組佔用符號,對第i組上採樣體素進行佔用概率預測,確定第i組佔用概率,並根據第i組佔用概率,對佔用指示資訊中的第i組佔用指示資訊進行解碼,確定第i組佔用符號;其中,i為整數,k為大於或等於1且小於i的整數。S4032. When i is greater than 1 and less than or equal to m, use at least k groups of decoded occupancy symbols to predict the occupancy probability of the i-th group of upsampled voxels, determine the i-th group of occupancy probabilities, and calculate the occupancy probability based on the i-th group of occupancy symbols. , decode the i-th group of occupancy indication information in the occupancy indication information, and determine the i-th group of occupancy symbols; where i is an integer, and k is an integer greater than or equal to 1 and less than i.

S4032中,在i大於1且小於或等於m時,也即對於m組上採樣體素中的第2組至第m組上採樣體素,解碼器在對第2組至第m組上採樣體素中的第i組上採樣體素進行佔用概率預測時,利用已解碼的至少k組上採樣體素對應的至少k組佔用符號,對第i組上採樣體素進行佔用概率預測,確定第i組佔用概率。In S4032, when i is greater than 1 and less than or equal to m, that is, for the 2nd to mth group of upsampled voxels in the m group of upsampled voxels, the decoder is upsampling the 2nd to mth groups. When predicting the occupancy probability of the i-th group of upsampled voxels in the voxel, use at least k groups of occupancy symbols corresponding to the decoded at least k groups of upsampled voxels to predict the occupancy probability of the i-th group of upsampled voxels, and determine The occupancy probability of the i-th group.

這裡,解碼器利用已解碼的至少k組上採樣體素對應的至少k組佔用符號,對第i組上採樣體素進行佔用概率預測,確定第i組佔用概率的過程與S1032中相應的概率預測過程描述一致,此處不再贅述。Here, the decoder uses at least k groups of occupancy symbols corresponding to at least k groups of decoded upsampled voxels to predict the occupancy probability of the i-th group of upsampled voxels, and the process of determining the i-th group of occupancy probabilities is the same as the corresponding probability in S1032 The description of the prediction process is consistent and will not be repeated here.

在一些實施例中,編碼器可以對第i組上採樣體素進行特徵提取,確定第i組體素特徵;確定已解碼的第i-k組佔用符號至第i-1組佔用符號為至少k組佔用符號;根據至少k組佔用符號,結合第i組體素特徵,對第i組上採樣體素中每個上採樣體素進行佔用概率預測,確定預測得到的第i組上採樣體素中每個上採樣體素對應的佔用概率為第i組佔用概率。In some embodiments, the encoder can perform feature extraction on the i-th group of upsampled voxels to determine the i-th group of voxel features; determine that the decoded i-k-th group of occupied symbols to the i-1-th group of occupied symbols are at least k groups Occupancy symbols; Based on at least k groups of occupancy symbols, combined with the characteristics of the i-th group of voxels, predict the occupancy probability for each upsampled voxel in the i-th group of upsampled voxels, and determine the predicted occupancy probability of the i-th group of upsampled voxels. The occupancy probability corresponding to each upsampled voxel is the i-th group occupancy probability.

在一些實施例中,解碼器可以根據第i組佔用概率,對第i組佔用指示資訊中每個佔用指示資訊進行熵解碼,確定第i組佔用指示資訊中每個佔用指示資訊對應的佔用符號,從而確定第i組佔用符號;其中,佔用符號包括:第一佔用符與第二佔用符;第一佔用符表徵對應體素被佔據;第二佔用符表徵對應體素未被佔據。示例性地,第一佔用符可以為1,第二佔用符可以為0。具體的根據實際情況進行選擇,本申請實施例不作限定。In some embodiments, the decoder can perform entropy decoding on each occupancy indication information in the i-th group of occupancy indication information according to the i-th group of occupancy probability, and determine the occupancy symbol corresponding to each occupancy indication information in the i-th group of occupancy indication information. , thereby determining the i-th group of occupancy symbols; where the occupancy symbols include: a first occupancy symbol and a second occupancy symbol; the first occupancy symbol represents that the corresponding voxel is occupied; the second occupancy symbol represents that the corresponding voxel is not occupied. For example, the first occupancy character may be 1, and the second occupancy character may be 0. The specific selection is made according to the actual situation, and is not limited by the embodiments of this application.

S4033、基於第i組佔用符號繼續下一組解碼,直至確定m組各自的佔用符號。S4033. Continue the next group of decoding based on the i-th group of occupied symbols until the respective occupied symbols of the m groups are determined.

本申請實施例中,解碼器可以基於第i組佔用符號,以上述同樣的方式繼續下一組解碼,直至確定m組各自的佔用符號。解碼器可以利用包含第i組佔用符號的至少k組佔用符號,對第i+1組上採樣體素進行佔用概率預測,並根據第i+1組佔用概率對佔用指示資訊中的第i+1組佔用指示資訊進行解碼,確定第i+1組佔用符號,直至對佔用指示資訊解碼完成,確定m組各自的佔用符號。In the embodiment of the present application, the decoder can continue decoding the next group of symbols based on the i-th group of occupied symbols in the same manner as above until the respective occupied symbols of the m groups are determined. The decoder can use at least k groups of occupancy symbols including the i-th group of occupancy symbols to predict the occupancy probability of the i+1th group of upsampled voxels, and predict the i+th group of occupancy indication information based on the i+1th group of occupancy probabilities. 1 group of occupancy indication information is decoded to determine the i+1th group of occupancy symbols, until the decoding of the occupancy indication information is completed and m groups of respective occupancy symbols are determined.

S404、基於m組佔用符號,確定第一尺度點雲對應的重建幾何資料。S404. Based on the m sets of occupancy symbols, determine the reconstructed geometric data corresponding to the first scale point cloud.

本申請實施例中,解碼器在完成m組上採樣體素的佔用概率預測與解碼,得到m組佔用符號時,可以基於m組佔用符號,確定第一尺度點雲對應的重建幾何資料,重建第一尺度點雲的幾何資訊。In the embodiment of the present application, when the decoder completes the occupancy probability prediction and decoding of m groups of upsampled voxels and obtains m groups of occupancy symbols, it can determine the reconstructed geometric data corresponding to the first scale point cloud based on the m groups of occupancy symbols, and reconstruct Geometric information of first-scale point clouds.

可以理解的是,本申請實施例中,透過對第一尺度點雲對應的前一個已解碼的第二尺度點雲,進行上採樣與劃分處理,將第二尺度點雲上採樣至第一尺度,並將上採樣後的體素劃分為m組,分組依次進行佔用概率預測,得到m組佔用概率。透過分組預測,加快了佔用概率的預測速度,提高了預測過程的處理效率。如此,利用m組佔用概率對第一尺度點雲對應的佔用指示資訊進行解碼,得到已解碼的m組佔用符號,重建第一尺度點雲的幾何資料,完成對第一尺度點雲的解碼,提高了解碼效率與解碼性能。It can be understood that in the embodiment of the present application, the second scale point cloud is upsampled to the first scale by upsampling and dividing the previous decoded second scale point cloud corresponding to the first scale point cloud. The upsampled voxels are divided into m groups, and the occupancy probability predictions are performed on the groups in sequence to obtain m groups of occupancy probabilities. Through group prediction, the prediction speed of occupancy probability is accelerated and the processing efficiency of the prediction process is improved. In this way, m groups of occupancy probabilities are used to decode the occupancy indication information corresponding to the first-scale point cloud, and m groups of decoded occupancy symbols are obtained, and the geometric data of the first-scale point cloud is reconstructed to complete the decoding of the first-scale point cloud. Improved decoding efficiency and decoding performance.

進一步地,本申請實施例中分組預測與編碼的方式,相較於基於每個體素的父節點和鄰居節點,逐個體素進行佔用概率預測與解碼的方式,一方面極大減小了解碼複雜度,提高了解碼速度;另一方面,隨著解碼的進行,所有之前已經解碼的上採樣體素組的佔用符號都可以作為上下文資訊,共同輸入到卷積網路中,説明預測當前上採樣體素組的佔據概率,從而提高了佔用預測概率預測的準確性,進而提高了解碼準確性,也即提高了解碼性能。Furthermore, the group prediction and coding method in the embodiment of this application, compared with the method of predicting and decoding the occupancy probability voxel by voxel based on the parent node and neighbor node of each voxel, on the one hand, greatly reduces the decoding complexity , improving the decoding speed; on the other hand, as decoding proceeds, the occupied symbols of all previously decoded upsampled voxel groups can be used as contextual information and jointly input into the convolutional network to predict the current upsampled volume. The occupancy probability of the element group is improved, thereby improving the accuracy of the occupancy prediction probability prediction, thereby improving the decoding accuracy, that is, improving the decoding performance.

在一些實施例中,在確定第二尺度點雲之前,本申請實施例還可以執行S601-S605的過程進行解碼,得到第二尺度點雲,如下:In some embodiments, before determining the second scale point cloud, embodiments of the present application may also perform the process of S601-S605 for decoding to obtain the second scale point cloud, as follows:

S601、解析碼流,確定第T尺度點雲,以及第T-1尺度點雲對應的第T-1佔用指示資訊。S601. Analyze the code stream to determine the T-th scale point cloud and the T-1th occupancy indication information corresponding to the T-1th scale point cloud.

S601中,解碼器可以透過解析碼流,得到第T尺度點雲對應的佔用指示資訊,即第T佔用指示資訊;並確定第T-1尺度點雲的前一個已解碼的低尺度點雲,即第T尺度點雲,以利用第T尺度點雲對第T-1佔用指示資訊進行解碼。其中,j=T,T-1,…,3;T為大於或等於3的整數;In S601, the decoder can obtain the occupancy indication information corresponding to the T-th scale point cloud by parsing the code stream, that is, the T-th occupancy indication information; and determine the previous decoded low-scale point cloud of the T-1th scale point cloud, That is, the T-th scale point cloud is used to decode the T-1th occupancy indication information. Among them, j=T,T-1,…,3; T is an integer greater than or equal to 3;

示例性地,解碼器可以透過解析碼流,得到第二尺度點雲對應的佔用指示資訊,即第二佔用指示資訊;並確定第二尺度點雲之前,已解碼的第三尺度點雲。從而利用已解碼的第三尺度點雲對第二尺度點雲對應的第二佔用指示資訊進行解碼。或者,解碼器也可以從第三尺度點雲對應的第三佔用指示資訊開始解碼直至解碼出第二尺度點雲:從碼流中獲取第三佔用指示資訊,確定已解碼的第四尺度點雲,利用第四尺度點雲先對第三佔用指示資訊進行解碼,得到已解碼的第三尺度點雲;再利用第三尺度點雲對碼流中解析得到的第二佔用指示資訊進行解碼,得到第二尺度點雲。For example, the decoder can obtain the occupancy indication information corresponding to the second scale point cloud by parsing the code stream, that is, the second occupancy indication information; and determine the decoded third scale point cloud before the second scale point cloud. Thus, the decoded third-scale point cloud is used to decode the second occupancy indication information corresponding to the second-scale point cloud. Alternatively, the decoder can also start decoding from the third occupancy indication information corresponding to the third scale point cloud until the second scale point cloud is decoded: obtain the third occupancy indication information from the code stream and determine the decoded fourth scale point cloud. , use the fourth scale point cloud to decode the third occupancy indication information first to obtain the decoded third scale point cloud; then use the third scale point cloud to decode the second occupancy indication information analyzed in the code stream to obtain Second scale point cloud.

這裡,對於上述過程中的每次解碼過程,可以從j=T開始,按照從大到小的順序對j的每一個取值執行以下處理:Here, for each decoding process in the above process, you can start from j=T and perform the following processing on each value of j in order from large to small:

S602、基於第j尺度點雲進行體素上採樣與劃分處理,並對劃分後的分組依次進行佔用概率預測,確定第j-1尺度點雲中m個分組對應的m組佔用概率。S602. Perform voxel upsampling and division processing based on the j-th scale point cloud, perform occupancy probability prediction on the divided groups in sequence, and determine m group occupancy probabilities corresponding to m groups in the j-1th scale point cloud.

S602中,解碼器透過與上述S402-S403中類似的過程,基於已解碼的第j尺度點雲進行體素上採樣與劃分處理,並對劃分後的分組依次進行佔用概率預測,確定第j-1尺度點雲中m個分組對應的m組佔用概率。In S602, the decoder performs voxel upsampling and division processing based on the decoded j-th scale point cloud through a process similar to the above-mentioned S402-S403, and sequentially performs occupancy probability prediction on the divided groups to determine the j-th- The occupancy probability of m groups corresponding to m groups in the 1-scale point cloud.

S603、根據第j-1尺度點雲中m個分組對應的m組佔用概率,對第j-1佔用指示資訊進行熵解碼,確定第j-1佔用指示資訊對應的m組佔用符號。S603. Perform entropy decoding on the j-1th occupancy indication information according to the m sets of occupancy probabilities corresponding to the m groups in the j-1th scale point cloud, and determine the m sets of occupancy symbols corresponding to the j-1th occupancy indication information.

S604、基於第j-1佔用指示資訊對應的m組佔用符號,重建第j-1尺度點雲。S604. Reconstruct the j-1th scale point cloud based on the m sets of occupancy symbols corresponding to the j-1th occupancy indication information.

S603-S604中,解碼器根據預測得到的第j-1尺度點雲中m個分組對應的m組佔用概率,對第j-1佔用指示資訊進行熵解碼,確定第j-1佔用指示資訊對應的m組佔用符號。進而基於第j-1佔用指示資訊對應的m組佔用符號進行幾何資料重建,重建第j-1尺度點雲。In S603-S604, the decoder performs entropy decoding on the j-1th occupancy indication information based on the predicted m group of occupancy probabilities corresponding to the m groups in the j-1th scale point cloud, and determines the correspondence of the j-1th occupancy indication information. m groups occupy symbols. Then, the geometric data is reconstructed based on the m sets of occupancy symbols corresponding to the j-1th occupancy indication information, and the j-1th scale point cloud is reconstructed.

S605、繼續根據j的下一個取值進行下一次處理,直至j=3時,重建得到第二尺度點雲。S605. Continue to perform the next processing based on the next value of j until j=3, and reconstruct the second scale point cloud.

S605中,解碼器根據從大到小的順序,以上述同樣的上採樣與劃分、分組依次佔用概率預測、以及解碼過程,對j的下一個取值進行下一次處理,重建下一個尺度(更高尺度)的點雲,直至j=3時,重建得到第二尺度點雲。In S605, the decoder performs the next processing on the next value of j and reconstructs the next scale (more high-scale) point cloud, until j=3, the second-scale point cloud is reconstructed.

如此,解碼器對相鄰尺度進行解碼時,可以利用前一個已解碼的低尺度點雲的已知幾何資料,對待解碼的高尺度點雲的佔用指示資訊進行解碼,重建高尺度點雲,直至重建得到第二尺度點雲。In this way, when the decoder decodes adjacent scales, it can use the known geometric data of the previously decoded low-scale point cloud to decode the occupancy indication information of the high-scale point cloud to be decoded, and reconstruct the high-scale point cloud until The second-scale point cloud is reconstructed.

需要說明的是,本申請實施例中的解碼方法可應用於可伸縮的編解碼方法中,也即對於編碼器側發送的多個尺度點雲的多個佔用指示資訊,解碼器可以根據實際解碼精度的需要,以從低尺度向高尺度解碼的順序,解碼重建至任意尺度的點雲。示例性地,編碼器在碼流中寫入並發送了第一尺度點雲的佔用指示資訊、第二尺度點雲的佔用指示資訊至第S+1尺度點雲的佔用指示資訊,而解碼器可以根據預設精度要求,根據本申請實施例提供的解碼方法,從第S+1尺度點雲解碼至第三尺度點雲,重建第三尺度點雲的幾何資料後結束解碼,不再對第二尺度佔用指示資訊與第一尺度點雲對應的佔用指示資訊進行解碼。具體的根據實際情況進行選擇,本申請實施例不作限定。It should be noted that the decoding method in the embodiment of the present application can be applied to a scalable encoding and decoding method, that is, for multiple occupancy indication information of multiple scale point clouds sent by the encoder side, the decoder can decode according to the actual To meet the needs of accuracy, decode and reconstruct point clouds of any scale in the order of decoding from low scale to high scale. For example, the encoder writes and sends the occupancy indication information of the first scale point cloud, the occupancy indication information of the second scale point cloud, and the occupancy indication information of the S+1th scale point cloud in the code stream, and the decoder According to the preset accuracy requirements, the decoding method provided by the embodiment of the present application can be used to decode from the S+1th scale point cloud to the third scale point cloud, and then end the decoding after reconstructing the geometric data of the third scale point cloud, and no longer perform the decoding of the third scale point cloud. The second-scale occupancy indication information is decoded with the occupancy indication information corresponding to the first-scale point cloud. The specific selection is made according to the actual situation, and is not limited by the embodiments of this application.

可以理解的是,本申請實施例提供的解碼方法可以重複應用於多個相鄰尺度之間,且每組相鄰尺度間的解碼相互獨立不依賴,因此可以靈活地實現尺度可伸縮的解碼。It can be understood that the decoding method provided by the embodiments of the present application can be repeatedly applied between multiple adjacent scales, and the decoding between each group of adjacent scales is independent of each other. Therefore, scale-scalable decoding can be flexibly implemented.

需要說明的是,上述解碼器的每次解碼過程都是將已解碼的低尺度點雲作為已知資訊,對高尺度點雲的佔用指示資訊進行解碼的。對於解碼器的首個解碼過程,其已知資訊可以是編碼器側發送的未編碼的預設數量個點雲資訊。編碼器可以將預設數量個點雲資訊,如點雲中100個點的座標作為首個已知資訊,以未編碼的方式直接發送至解碼端,以使解碼器無需對首個已知資訊進行解碼,直接利用編碼器發送的預設數量個點的位置資訊,重建出相應尺度的點雲,以繼續之後的解碼過程。It should be noted that each decoding process of the above-mentioned decoder takes the decoded low-scale point cloud as known information and decodes the occupancy indication information of the high-scale point cloud. For the first decoding process of the decoder, its known information may be a preset number of unencoded point cloud information sent by the encoder side. The encoder can send a preset number of point cloud information, such as the coordinates of 100 points in the point cloud, as the first known information, directly to the decoder in an unencoded manner, so that the decoder does not need to process the first known information. Decode and directly use the position information of the preset number of points sent by the encoder to reconstruct the point cloud of the corresponding scale to continue the subsequent decoding process.

下面,結合圖14,說明本申請實施例提供的編解碼方法在實際場景中的應用。Next, with reference to Figure 14, the application of the encoding and decoding method provided by the embodiment of the present application in actual scenarios is explained.

如圖14所示,首先對點雲圖像A進行體素化得到尺度p+1點雲,在編碼器的下採樣過程中,對尺度p+1點雲進行體素下採樣,得到尺度p點雲。在編碼器的上採樣過程中,透過CNN網路對尺度p點雲進行上採樣,並對上採樣得到尺度p+1的n個上採樣體素進行編號與分組劃分,示例性地,分為8組。從第1組到第8組,透過CNN網路依次預測每組上採樣體素的佔據概率(佔用概率)。這裡,佔用概率預測的過程可參考圖10。As shown in Figure 14, the point cloud image A is first voxelized to obtain the scale p+1 point cloud. During the downsampling process of the encoder, the scale p+1 point cloud is voxelized to obtain the scale p Point cloud. In the upsampling process of the encoder, the point cloud of scale p is upsampled through the CNN network, and the n upsampled voxels of scale p+1 obtained by upsampling are numbered and grouped. For example, they are divided into 8 sets. From group 1 to group 8, the occupancy probability (occupancy probability) of each group of upsampled voxels is predicted sequentially through the CNN network. Here, the process of occupancy probability prediction can be referred to Figure 10.

示例性地,在第1階段預測中,8組上採樣體素中的第1組上採樣體素經過CNN處理,輸出第1組上採樣體素的佔據概率,然後根據第1組上採樣體素佔據概率,確定第1組上採樣體素對應的第1組佔據符號。隨著編碼的進行,在第2階段預測直至第8階段的預測過程中,每次預測過程的輸入資料除了當前組上採樣體素,還包括所有之前預測階段得到的其他上採樣體素組的佔用符號,以將其作為當前組上採樣體素的上下文資訊,共同輸入到CNN中,幫助預測當前組上採樣體素的佔據概率,並將當前組上採樣體素的佔據概率轉化為佔用符號。這樣,編碼器根據預測得到的每組上採樣體素的佔據概率,得到每組上採樣體素的佔用符號,基於每組上採樣體素的佔用符號進行算術編碼,得到尺度p+1點雲的尺度p+1編碼資料寫入碼流。其中,尺度p+1編碼資料包含8組佔用符號對應的8組編碼。編碼器基於尺度p點雲進行下一次下採樣,得到尺度p-1點雲,並透過上述相同的過程,基於尺度p-1點雲進行預測與編碼,得到尺度p點雲的尺度p編碼資料寫入碼流。以此類推,編碼器得到包含尺度p-1點雲的尺度p-1編碼資料、尺度p編碼資料以及尺度p+1編碼資料的碼流,並將碼流發送至解碼器。For example, in the first stage prediction, the first group of upsampled voxels in the eight groups of upsampled voxels is processed by CNN, and the occupancy probability of the first group of upsampled voxels is output, and then the occupancy probability of the first group of upsampled voxels is output according to the first group of upsampled voxels. Voxel occupancy probability is determined to determine the first group of occupation symbols corresponding to the first group of upsampled voxels. As the encoding proceeds, in the prediction process from the second stage to the eighth stage, the input data of each prediction process includes not only the current group of upsampled voxels, but also all other upsampled voxel groups obtained in the previous prediction stage. The occupancy symbol is used as the contextual information of the current group of upsampled voxels, and is jointly input into the CNN to help predict the occupancy probability of the current group of upsampled voxels, and convert the occupancy probability of the current group of upsampled voxels into occupancy symbols. . In this way, the encoder obtains the occupancy symbols of each group of upsampled voxels based on the predicted occupancy probability of each group of upsampled voxels, and performs arithmetic coding based on the occupancy symbols of each group of upsampled voxels to obtain a scale p+1 point cloud. The standard p+1 encoded data is written into the code stream. Among them, the scale p+1 coding data contains 8 sets of codes corresponding to 8 sets of occupied symbols. The encoder performs the next downsampling based on the scale p point cloud to obtain the scale p-1 point cloud, and through the same process as above, predicts and codes based on the scale p-1 point cloud to obtain the scale p coded data of the scale p point cloud. Write code stream. By analogy, the encoder obtains a code stream containing scale p-1 coded data, scale p coded data and scale p+1 coded data of the scale p-1 point cloud, and sends the code stream to the decoder.

在解碼器中,根據本申請實施例提供的解碼方法,從低尺度向到高尺度解碼。示例性地,對尺度p-1編碼資料進行解碼,重建得到尺度p-1點雲。在解碼器的上採樣過程中,對尺度p-1點雲進行上採樣,得到尺度p的n個上採樣體素。對尺度p的n個上採樣體素進行相同的編號與分組,並分組依次進行佔用概率預測,得到尺度p的每組上採樣體素對應的佔用概率,利用尺度p的每組上採樣體素對應的佔用概率,對碼流中解析得到的尺度p編碼資料進行算術解碼,得到尺度p的n個上採樣體素中各個上採樣體素對應的佔用符號,以此重建尺度p點雲的幾何資料,完成對尺度p編碼資料的解碼。之後基於已解碼的尺度p點雲,以相同的過程對尺度p+1編碼資料解碼,重建尺度p+1點雲的幾何資料。In the decoder, decoding is performed from low scale to high scale according to the decoding method provided by the embodiment of the present application. For example, the scale p-1 encoded data is decoded and a scale p-1 point cloud is reconstructed. In the upsampling process of the decoder, the scale p-1 point cloud is upsampled to obtain n upsampled voxels of scale p. The n upsampled voxels of scale p are numbered and grouped with the same number, and the occupancy probability prediction is performed in groups to obtain the occupancy probability corresponding to each group of upsampled voxels of scale p. Using each group of upsampled voxels of scale p Corresponding occupancy probability, perform arithmetic decoding on the scale p coded data analyzed in the code stream, and obtain the occupancy symbols corresponding to each upsampled voxel in the n upsampled voxels of scale p, thereby reconstructing the geometry of the scale p point cloud. data to complete the decoding of standard p-encoded data. Then, based on the decoded point cloud of scale p, the same process is used to decode the encoded data of scale p+1, and reconstruct the geometric data of the point cloud of scale p+1.

可以理解的是,本申請實施例相比傳統的G-PCC方法,具有良好的壓縮性能與並行性,同時能夠保持較快的編解碼速度,提高編解碼效率。申請人將本申請實施例的編解碼方法與傳統的G-PCC方法進行了對比測試,結果如表1所示,如下: 表1 G-PCC 1-stage 3-stage 8-stage 碼率(bpp) 1.029 1.086 0.703 0.633 增益 - +5.5% -31.7% -38.5% 編碼時間 5.8 0.7 1.1 1.9 解碼時間 3.3 0.7 1.0 1.8 It can be understood that compared with the traditional G-PCC method, the embodiment of the present application has good compression performance and parallelism, while maintaining a faster encoding and decoding speed and improving encoding and decoding efficiency. The applicant conducted a comparative test between the encoding and decoding method of the embodiment of the present application and the traditional G-PCC method. The results are shown in Table 1, as follows: Table 1 G-PCC 1-stage 3-stage 8-stage Code rate (bpp) 1.029 1.086 0.703 0.633 Gain - +5.5% -31.7% -38.5% encoding time 5.8 0.7 1.1 1.9 decoding time 3.3 0.7 1.0 1.8

表1中,1-stage表示在分組劃分處理中使用1組的分組方式,並對1組上採樣體素進行佔用概率預測與編解碼;3-stage表示在分組劃分處理中使用3組的分組方式,並對3組上採樣體素依次進行佔用概率預測與編解碼;8-stage表示在分組劃分處理中使用8組的分組方式,並對8組上採樣體素依次進行佔用概率預測與編解碼。可以看出,相比於傳統的G-PCC方法,本申請實施例在3種分組預測方式下的編碼時間和解碼時間均遠小於傳統的G-PCC方法的編解碼時間。並且,3-stage和8-stage下的碼率(bits per pixel,bpp)也均小於傳統的G-PCC的碼率,從而使得3-stage和8-stage下的增益分別達到了-31.7%與-38.5%。這裡,增益的數值與性能負相關。增益越小,比如以負值表示的數值越小,代表壓縮性能越好。這一資料說明了編解碼性能的提升,並節約了傳輸頻寬。In Table 1, 1-stage indicates that 1 group is used in the grouping process, and occupancy probability prediction and encoding and decoding are performed on 1 group of upsampled voxels; 3-stage indicates that 3 groups are used in the grouping process. method, and sequentially perform occupancy probability prediction and encoding and decoding on 3 groups of upsampled voxels; 8-stage means using 8 groups of grouping methods in the group division processing, and sequentially perform occupancy probability prediction and encoding on 8 groups of upsampled voxels. Decode. It can be seen that compared with the traditional G-PCC method, the encoding time and decoding time of the embodiment of the present application under the three packet prediction methods are much smaller than the encoding and decoding time of the traditional G-PCC method. Moreover, the bit rates (bits per pixel, bpp) under 3-stage and 8-stage are also smaller than the bit rate of traditional G-PCC, resulting in gains of -31.7% under 3-stage and 8-stage respectively. vs. -38.5%. Here, the value of gain is inversely related to performance. The smaller the gain, such as the smaller the value expressed as a negative value, the better the compression performance. This information illustrates the improvement in encoding and decoding performance and saves transmission bandwidth.

本申請實施例提供一種解碼器1,如圖15所示,包括:This embodiment of the present application provides a decoder 1, as shown in Figure 15, including:

解析部分11,配置為解析碼流,確定第一尺度點雲對應的佔用指示資訊;The parsing part 11 is configured to parse the code stream and determine the occupancy indication information corresponding to the first scale point cloud;

第一分組部分12,配置為確定第二尺度點雲,並對所述第二尺度點雲進行上採樣與劃分處理,確定m組上採樣體素;其中,所述第二尺度點雲為所述第一尺度點雲對應的前一個已解碼的點雲資料;The first grouping part 12 is configured to determine the second scale point cloud, perform upsampling and dividing processing on the second scale point cloud, and determine m groups of upsampled voxels; wherein the second scale point cloud is The previous decoded point cloud data corresponding to the first scale point cloud;

第一預測部分13,配置為對所述m組上採樣體素依次進行佔用概率預測,確定m組佔用概率,並根據所述m組佔用概率對所述佔用指示資訊進行解碼,確定所述m組各自的佔用符號;m為大於或等於1的整數;The first prediction part 13 is configured to predict the occupancy probabilities of the m groups of upsampled voxels in sequence, determine the m groups of occupancy probabilities, and decode the occupancy indication information according to the m groups of occupancy probabilities to determine the m groups of occupancy probabilities. The occupied symbols of each group; m is an integer greater than or equal to 1;

解碼部分14,配置為基於所述m組佔用符號,確定所述第一尺度點雲對應的重建幾何資料。The decoding part 14 is configured to determine the reconstructed geometric data corresponding to the first scale point cloud based on the m groups of occupied symbols.

在一些實施例中,所述第一分組部分12,還配置為對所述第二尺度點雲進行體素上採樣,確定第一尺度的n個上採樣體素;n為大於1的整數;對所述n個上採樣體素中的每個上採樣體素進行編號,並基於每個上採樣體素對應的編號進行分組,確定所述m組上採樣體素。In some embodiments, the first grouping part 12 is also configured to perform voxel upsampling on the second scale point cloud, and determine n upsampled voxels of the first scale; n is an integer greater than 1; Each of the n upsampled voxels is numbered, and grouped based on the number corresponding to each upsampled voxel, to determine the m groups of upsampled voxels.

在一些實施例中,所述第一預測部分13,還配置為在所述m組上採樣體素中,對第1組上採樣體素進行佔用概率預測,確定第一組佔用概率,並根據所述第一組佔用概率對所述佔用指示資訊進行解碼,確定第一組佔用符號;在i大於1且小於或等於m時,利用已解碼的至少k組佔用符號,對第i組上採樣體素進行佔用概率預測,確定第i組佔用概率,並根據所述第i組佔用概率,對所述佔用指示資訊中的第i組佔用指示資訊進行解碼,確定第i組佔用符號;其中,i為整數,k為大於或等於1且小於i的整數;基於所述第i組佔用符號繼續下一組解碼,直至確定所述m組各自的佔用符號。In some embodiments, the first prediction part 13 is also configured to predict the occupancy probability of the first group of upsampled voxels in the m groups of upsampled voxels, determine the occupancy probability of the first group, and determine the occupancy probability according to The first group of occupancy probabilities decodes the occupancy indication information to determine the first group of occupancy symbols; when i is greater than 1 and less than or equal to m, use at least k groups of decoded occupancy symbols to upsample the i-th group The voxel performs occupancy probability prediction, determines the i-th group of occupancy probabilities, and decodes the i-th group of occupancy indication information in the occupancy indication information according to the i-th group of occupancy probabilities to determine the i-th group of occupancy symbols; wherein, i is an integer, k is an integer greater than or equal to 1 and less than i; based on the i-th group of occupied symbols, the next group of decoding is continued until the respective occupied symbols of the m groups are determined.

在一些實施例中,所述第一分組部分12,還配置為對所述n個上採樣體素中的每個上採樣體素進行編號,確定所述每個上採樣體素對應的編號;根據所述每個上採樣體素的編號,對所述n個上採樣體素進行分組,確定所述m組上採樣體素。In some embodiments, the first grouping part 12 is further configured to number each of the n upsampled voxels, and determine the number corresponding to each of the upsampled voxels; According to the number of each upsampled voxel, the n upsampled voxels are grouped to determine the m groups of upsampled voxels.

在一些實施例中,所述第一分組部分12,還配置為在所述n個上採樣體素中,根據所述每個上採樣體素的編號,將編號相同的上採樣體素劃分為一組,確定所述m組上採樣體素。In some embodiments, the first grouping part 12 is further configured to divide upsampled voxels with the same number among the n upsampled voxels according to the number of each upsampled voxel. A group is determined to determine the m groups of upsampled voxels.

在一些實施例中,所述第一分組部分12,還配置為確定至少兩個連續編號;根據所述每個上採樣體素的編號,將所述至少兩個連續編號在所述n個上採樣體素中對應的上採樣體素作為一組,確定所述m組上採樣體素。In some embodiments, the first grouping part 12 is further configured to determine at least two consecutive numbers; according to the number of each upsampled voxel, the at least two consecutive numbers are assigned to the n The corresponding upsampled voxels in the sampled voxels are taken as a group to determine the m groups of upsampled voxels.

在一些實施例中,所述第一預測部分13,還配置為對所述第i組上採樣體素進行特徵提取,確定第i組體素特徵;確定已解碼的第i-k組佔用符號至第i-1組佔用符號為所述至少k組佔用符號;根據所述至少k組佔用符號,結合所述第i組體素特徵,對所述第i組上採樣體素中每個上採樣體素進行佔用概率預測,確定預測得到的所述第i組上採樣體素中每個上採樣體素對應的佔用概率為所述第i組佔用概率。In some embodiments, the first prediction part 13 is also configured to perform feature extraction on the i-th group of upsampled voxels, determine the i-th group of voxel features, and determine the decoded i-k group of occupied symbols to the i-th group of occupied symbols. The i-1 group of occupancy symbols are the at least k groups of occupancy symbols; according to the at least k groups of occupancy symbols, combined with the i-th group of voxel features, each upsampled volume in the i-th group of upsampled voxels is The occupancy probability is predicted for each voxel, and the predicted occupancy probability corresponding to each upsampled voxel in the i-th group of up-sampled voxels is determined to be the i-th group of occupancy probabilities.

在一些實施例中,所述解析部分11、第一分組部分12、第一預測部分13與解碼部分14,還配置為所述確定第二尺度點雲之前,解析所述碼流,確定第T尺度點雲,以及第T-1尺度點雲對應的第T-1佔用指示資訊;其中,j=T,T-1,…,3;T為大於或等於3的整數;從j=T開始,按照從大到小的順序對j的每一個取值執行以下處理:基於第j尺度點雲進行體素上採樣與劃分處理,並對劃分後的分組依次進行佔用概率預測,確定第j-1尺度點雲中m個分組對應的m組佔用概率;根據所述第j-1尺度點雲中m個分組對應的m組佔用概率,對所述第j-1佔用指示資訊進行熵解碼,確定所述第j-1佔用指示資訊對應的m組佔用符號;基於所述第j-1佔用指示資訊對應的m組佔用符號,重建第j-1尺度點雲;繼續根據j的下一個取值進行下一次處理,直至j=3時,重建得到所述第二尺度點雲。In some embodiments, the parsing part 11, the first grouping part 12, the first prediction part 13 and the decoding part 14 are also configured to parse the code stream and determine the T-th point cloud before determining the second scale point cloud. Scale point cloud, and the T-1th occupancy indication information corresponding to the T-1st scale point cloud; where, j=T, T-1,...,3; T is an integer greater than or equal to 3; starting from j=T , perform the following processing on each value of j in order from large to small: perform voxel upsampling and division processing based on the jth scale point cloud, and predict the occupancy probability of the divided groups in sequence to determine the jth- m groups of occupancy probabilities corresponding to m groups in the 1-scale point cloud; entropy decoding of the j-1th occupancy indication information based on m groups of occupancy probabilities corresponding to m groups in the j-1th scale point cloud, Determine the m group of occupancy symbols corresponding to the j-1th occupancy indication information; reconstruct the j-1th scale point cloud based on the m group of occupancy symbols corresponding to the j-1th occupancy indication information; continue to take the next step based on j The value is processed for the next time until j=3, and the second scale point cloud is reconstructed.

在一些實施例中,所述解碼部分14,還配置為根據所述第i組佔用概率,對所述第i組佔用指示資訊中每個佔用指示資訊進行熵解碼,確定所述第i組佔用指示資訊中每個佔用指示資訊對應的佔用符號,從而確定所述第i組佔用符號;其中,所述佔用符號包括:第一佔用符與第二佔用符;所述第一佔用符表徵對應體素被佔據;所述第二佔用符表徵對應體素未被佔據。In some embodiments, the decoding part 14 is further configured to perform entropy decoding on each occupancy indication information in the i-th group of occupancy indication information according to the i-th group of occupancy probability, and determine the i-th group of occupancy information. The occupancy symbols corresponding to each occupancy indication information in the indication information are used to determine the i-th group of occupancy symbols; wherein the occupancy symbols include: a first occupancy symbol and a second occupancy symbol; the first occupancy symbol represents the corresponding entity The voxel is occupied; the second occupancy character indicates that the corresponding voxel is not occupied.

在一些實施例中,所述解碼部分14,還配置為所述基於所述第i組佔用符號繼續下一組解碼,直至確定所述m組各自的佔用符號,包括:利用包含所述第i組佔用符號的至少k組佔用符號,對第i+1組上採樣體素進行佔用概率預測,並根據第i+1組佔用概率對所述佔用指示資訊中的第i+1組佔用指示資訊進行解碼,確定第i+1組佔用符號,直至對所述佔用指示資訊解碼完成,確定所述m組各自的佔用符號。In some embodiments, the decoding part 14 is further configured to continue the next group of decoding based on the i-th group of occupied symbols until the respective m groups of occupied symbols are determined, including: using the i-th group of occupied symbols to determine At least k groups of occupancy symbols of the group of occupancy symbols, perform occupancy probability prediction on the i+1th group of upsampled voxels, and predict the i+1th group of occupancy indication information in the occupancy indication information based on the i+1th group of occupancy probabilities. Decoding is performed to determine the i+1th group of occupied symbols, until the decoding of the occupancy indication information is completed, and the respective occupied symbols of the m groups are determined.

在一些實施例中,本申請實施例提供一種編碼器2,如圖16所示,包括:In some embodiments, the embodiment of the present application provides an encoder 2, as shown in Figure 16, including:

下採樣部分21,配置為對第一尺度點雲進行體素下採樣,確定第二尺度點雲;The downsampling part 21 is configured to perform voxel downsampling on the first scale point cloud and determine the second scale point cloud;

第二分組部分22,配置為對所述第二尺度點雲進行上採樣與劃分處理,確定m組上採樣體素;m為大於或等於1的整數;The second grouping part 22 is configured to perform upsampling and dividing processing on the second scale point cloud, and determine m groups of upsampled voxels; m is an integer greater than or equal to 1;

第二預測部分23,配置為對所述m組上採樣體素依次進行佔用概率預測,確定m組佔用概率,根據所述m組佔用概率確定所述m組各自的佔用符號;The second prediction part 23 is configured to predict the occupancy probability of the m groups of upsampled voxels in sequence, determine the m group of occupancy probabilities, and determine the respective occupancy symbols of the m groups according to the m group of occupancy probabilities;

編碼部分24,配置為對所述m組各自的佔用符號進行編碼,確定所述第一尺度點雲對應的佔用指示資訊,並將所述佔用指示資訊寫入碼流。The encoding part 24 is configured to encode the respective occupancy symbols of the m groups, determine the occupancy indication information corresponding to the first scale point cloud, and write the occupancy indication information into the code stream.

在一些實施例中,所述第二分組部分22,還配置為對第二尺度點雲進行體素上採樣,確定第一尺度的n個上採樣體素;n為大於1的整數;對所述n個上採樣體素中的每個上採樣體素進行編號,並基於每個上採樣體素對應的編號進行分組,確定m組上採樣體素。In some embodiments, the second grouping part 22 is also configured to perform voxel upsampling on the second scale point cloud, and determine n upsampled voxels of the first scale; n is an integer greater than 1; Each of the n upsampled voxels is numbered, and grouped based on the number corresponding to each upsampled voxel, to determine m groups of upsampled voxels.

在一些實施例中,所述第二預測部分23,還配置為在所述m組上採樣體素中,對第1組上採樣體素進行佔用概率預測,確定第一組佔用概率,並利用預設佔用符表示所述第一組佔用概率,確定第一組佔用符號;在i大於1且小於或等於m時,利用已完成概率預測與佔用符表示的至少k組上採樣體素對應的至少k組佔用符號,對第i組上採樣體素進行佔用概率預測,確定第i組佔用概率;其中,i為整數,k為大於或等於1且小於i的整數;利用所述預設佔用符表示所述第i組佔用概率,確定第i組佔用符號;利用包含所述第i組佔用符號的至少k組佔用符號,繼續對第i+1組上採樣體素進行佔用概率預測與佔用符表示,直至確定所述m組各自的佔用符號。In some embodiments, the second prediction part 23 is also configured to predict the occupancy probability of the first group of upsampled voxels in the m groups of upsampled voxels, determine the occupancy probability of the first group, and use The preset occupancy symbol represents the first group of occupancy probabilities, and the first group of occupancy symbols is determined; when i is greater than 1 and less than or equal to m, the completed probability is used to predict the number corresponding to at least k groups of upsampled voxels represented by the occupancy symbol. At least k groups of occupancy symbols are used to predict the occupancy probability of the i-th group of upsampled voxels to determine the i-th group of occupancy probabilities; where i is an integer, k is an integer greater than or equal to 1 and less than i; use the preset occupancy symbol represents the i-th group of occupancy probabilities, and determines the i-th group of occupancy symbols; using at least k groups of occupancy symbols including the i-th group of occupancy symbols, continue to predict the occupancy probability and occupancy of the i+1 group of upsampled voxels symbol representation until the respective occupied symbols of the m groups are determined.

在一些實施例中,所述第二分組部分22,還配置為對所述n個上採樣體素中的每個上採樣體素進行編號,確定所述每個上採樣體素對應的編號;In some embodiments, the second grouping part 22 is further configured to number each of the n upsampled voxels, and determine the number corresponding to each of the upsampled voxels;

根據所述每個上採樣體素的編號,對所述n個上採樣體素進行分組,確定所述m組上採樣體素。According to the number of each upsampled voxel, the n upsampled voxels are grouped to determine the m groups of upsampled voxels.

在一些實施例中,所述第二分組部分22,還配置為在所述n個上採樣體素中,根據所述每個上採樣體素的編號,將編號相同的上採樣體素劃分為一組,確定所述m組上採樣體素。In some embodiments, the second grouping part 22 is further configured to divide upsampled voxels with the same number among the n upsampled voxels according to the number of each upsampled voxel. A group is determined to determine the m groups of upsampled voxels.

在一些實施例中,所述第二分組部分22,還配置為確定至少兩個連續編號;根據所述每個上採樣體素的編號,將所述至少兩個連續編號在所述n個上採樣體素中對應的上採樣體素作為一組,確定所述m組上採樣體素。In some embodiments, the second grouping part 22 is further configured to determine at least two consecutive numbers; according to the number of each upsampled voxel, the at least two consecutive numbers are placed on the n The corresponding upsampled voxels in the sampled voxels are taken as a group to determine the m groups of upsampled voxels.

在一些實施例中,所述第二預測部分23,還配置為對所述第i組上採樣體素進行特徵提取,確定第i組體素特徵;確定已完成概率預測與佔用符表示的第i-k組佔用符號至第i-1組佔用符號為所述至少k組佔用符號;根據所述至少k組佔用符號,結合所述第i組體素特徵,對所述第i組上採樣體素中每個上採樣體素進行佔用概率預測,確定所述第i組上採樣體素中每個上採樣體素對應的佔用概率為所述第i組佔用概率。In some embodiments, the second prediction part 23 is also configured to perform feature extraction on the i-th group of upsampled voxels, determine the i-th group of voxel features, and determine the i-th group of voxels that have completed probability prediction and occupancy symbol representation. The i-k groups of occupancy symbols to the i-1th group of occupancy symbols are the at least k groups of occupancy symbols; according to the at least k groups of occupancy symbols, combined with the i-th group of voxel features, the i-th group of voxels are upsampled The occupancy probability is predicted for each upsampled voxel in the i-th group of up-sampled voxels, and the occupancy probability corresponding to each up-sampled voxel in the i-th group of up-sampled voxels is determined to be the i-th group of occupancy probabilities.

在一些實施例中,所述第二預測部分23,還配置為利用所述預設佔用符中的第一佔用符號,表示所述第i組佔用概率中大於或等於預設概率閾值的佔用概率;並利用所述預設佔用符中的第二佔用符號,表示所述第i組佔用概率中小於所述預設概率閾值的佔用概率,確定所述第i組佔用符號。In some embodiments, the second prediction part 23 is also configured to use the first occupancy symbol in the preset occupancy symbols to represent the occupancy probability in the i-th group of occupancy probabilities that is greater than or equal to the preset probability threshold. ; And use the second occupancy symbol in the preset occupancy symbol to represent the occupancy probability of the i-th group of occupancy probabilities that is less than the preset probability threshold, and determine the i-th group of occupancy symbols.

在一些實施例中,所述編碼部分24,還配置為對所述m組各自的佔用符號中每組佔用符進行熵編碼,確定編碼得到的m組佔用指示資訊為所述第一尺度點雲對應的佔用指示資訊。In some embodiments, the encoding part 24 is also configured to perform entropy encoding on each group of occupancy symbols in the m groups of respective occupancy symbols, and determine that the encoded m groups of occupancy indication information are the first scale point cloud Corresponding occupancy indication information.

在一些實施例中,所述下採樣部分21、第二分組部分22、第二預測部分23與編碼部分24,還配置為基於所述第二尺度點雲進行至少S次體素下採樣,確定第三尺度點雲至第S+2尺度點雲;S為大於或等於1的整數;分別對所述第三尺度點雲至所述第S+2尺度點雲進行體素上採樣與劃分處理、並分別對劃分後的分組依次進行佔用概率預測與編碼,確定所述第二尺度點雲的佔用指示資訊至第S+1尺度點雲的佔用指示資訊;將所述第一尺度點雲的佔用指示資訊、所述第二尺度點雲的佔用指示資訊至所述第S+1尺度點雲的佔用指示資訊寫入碼流。In some embodiments, the downsampling part 21, the second grouping part 22, the second prediction part 23 and the encoding part 24 are also configured to perform at least S times of voxel downsampling based on the second scale point cloud, determining The third scale point cloud to the S+2th scale point cloud; S is an integer greater than or equal to 1; perform voxel upsampling and division processing on the third scale point cloud to the S+2th scale point cloud respectively. , and perform occupancy probability prediction and coding on the divided groups in sequence, and determine the occupancy indication information of the second scale point cloud to the occupancy indication information of the S+1th scale point cloud; The occupancy indication information, the occupancy indication information of the second scale point cloud to the occupancy indication information of the S+1th scale point cloud are written into the code stream.

需要說明的是,以上裝置實施例的描述,與上述方法實施例的描述是類似的,具有同方法實施例相似的有益效果。對於本申請裝置實施例中未披露的技術細節,請參照本申請方法實施例的描述而理解。It should be noted that the description of the above device embodiment is similar to the description of the above method embodiment, and has similar beneficial effects as the method embodiment. For technical details not disclosed in the device embodiments of this application, please refer to the description of the method embodiments of this application for understanding.

在一些實施例中,本申請實施例還提供一種解碼器,圖17為本申請實施例提供的解碼器3的一種可選的結構示意圖。如圖17所示,解碼器3包括:第一記憶體32與第一處理器33。其中,第一記憶體32和第一處理器33透過第一通訊匯流排34連接;第一記憶體32,用於儲存可執行指令;第一處理器33,用於執行第一記憶體32中儲存的可執行指令時,實現本申請實施例提供的解碼方法。In some embodiments, the embodiment of the present application also provides a decoder. Figure 17 is an optional structural schematic diagram of the decoder 3 provided by the embodiment of the present application. As shown in FIG. 17 , the decoder 3 includes: a first memory 32 and a first processor 33 . Among them, the first memory 32 and the first processor 33 are connected through the first communication bus 34; the first memory 32 is used to store executable instructions; the first processor 33 is used to execute the first memory 32. When storing executable instructions, the decoding method provided by the embodiment of the present application is implemented.

在一些實施例中,本申請實施例還提供一種編碼器,圖17為本申請實施例提供的編碼器4的一種可選的結構示意圖。如圖18所示,編碼器4包括:第二記憶體42與第二處理器43。其中,第二記憶體42和第二處理器43透過第二通訊匯流排44連接;第二記憶體42,用於儲存可執行指令;第二處理器43,用於執行第二記憶體42中儲存的可執行指令時,實現本申請實施例提供的編碼方法。In some embodiments, the embodiment of the present application also provides an encoder. Figure 17 is an optional structural schematic diagram of the encoder 4 provided by the embodiment of the present application. As shown in FIG. 18 , the encoder 4 includes: a second memory 42 and a second processor 43 . Among them, the second memory 42 and the second processor 43 are connected through the second communication bus 44; the second memory 42 is used to store executable instructions; the second processor 43 is used to execute the second memory 42. When storing executable instructions, the coding method provided by the embodiment of the present application is implemented.

本申請實施例提供一種儲存有可執行指令的電腦可讀儲存媒介,其中儲存有可執行指令,當可執行指令被第一處理器執行時,將引起第一處理器執行上述任一種本申請實施例提供的解碼方法;或者,當可執行指令被第二處理器執行時,將引起第二處理器執行上述任一種本申請實施例提供的編碼方法。Embodiments of the present application provide a computer-readable storage medium storing executable instructions. The executable instructions are stored therein. When the executable instructions are executed by a first processor, they will cause the first processor to execute any of the above implementations of the present application. or, when the executable instruction is executed by the second processor, it will cause the second processor to execute any of the above encoding methods provided by the embodiments of the present application.

在一些實施例中,電腦可讀儲存媒介可以是FRAM、ROM、PROM、EPROM、EEPROM、快閃記憶體、磁表面記憶體、光碟、或CD-ROM等記憶體;也可以是包括上述記憶體之一或任意組合的各種設備。In some embodiments, the computer-readable storage medium may be a memory such as FRAM, ROM, PROM, EPROM, EEPROM, flash memory, magnetic surface memory, optical disk, or CD-ROM; it may also include the above memory One or any combination of various devices.

在一些實施例中,可執行指令可以採用程式、軟體、軟體模組、腳本或代碼的形式,按任意形式的程式設計語言(包括編譯或解釋語言,或者聲明性或過程性語言)來編寫,並且其可按任意形式部署,包括被部署為獨立的程式或者被部署為模組、元件、子常式或者適合在計算環境中使用的其它單元。In some embodiments, executable instructions may take the form of programs, software, software modules, scripts, or code written in any form of programming language, including compiled or interpreted languages, or declarative or procedural languages, And it can be deployed in any form, including deployed as a stand-alone program or deployed as a module, component, subroutine or other unit suitable for use in a computing environment.

作為示例,可執行指令可以但不一定對應於檔案系統中的檔,可以被儲存在保存其它程式或資料的檔的一部分,例如,儲存在超文字標記語言(HTML,Hyper Text Markup Language)文檔中的一個或多個腳本中,儲存在專用於所討論的程式的單個檔中,或者,儲存在多個協同檔(例如,儲存一個或多個模組、副程式或代碼部分的檔)中。As an example, executable instructions may, but do not necessarily correspond to, files in a file system and may be stored as part of a file that holds other programs or data, for example, in a Hyper Text Markup Language (HTML) document. of one or more scripts, stored in a single file dedicated to the program in question, or stored in multiple collaborative files (e.g., files storing one or more modules, subprograms, or code portions).

作為示例,可執行指令可被部署為在一個計算設備上執行,或者在位於一個地點的多個計算設備上執行,又或者,在分佈在多個地點且透過通訊網路互連的多個計算設備上執行。As examples, executable instructions may be deployed to execute on one computing device, or on multiple computing devices located at one location, or on multiple computing devices distributed across multiple locations and interconnected by a communications network. execute on.

本領域內的技術人員應明白,本申請的實施例可提供為方法、系統、或電腦程式產品。因此,本申請可採用硬體實施例、軟體實施例、或結合軟體和硬體方面的實施例的形式。而且,本申請可採用在一個或多個其中包含有電腦可用程式碼的電腦可用儲存媒介(包括但不限於磁碟記憶體和光學記憶體等)上實施的電腦程式產品的形式。Those skilled in the art should understand that embodiments of the present application may be provided as methods, systems, or computer program products. Accordingly, the present application may take the form of hardware embodiments, software embodiments, or embodiments combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk memory and optical memory, etc.) containing computer-usable program code.

本申請是參照根據本申請實施例的方法、設備(系統)、和電腦程式產品的流程圖和/或方框圖來描述的。應理解可由電腦程式指令實現流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合。可提供這些電腦程式指令到通用電腦、專用電腦、嵌入式處理機或其他可程式設計資料處理設備的處理器以產生一個機器,使得透過電腦或其他可程式設計資料處理設備的處理器執行的指令產生用於實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the application. It will be understood that each process and/or block in the flowchart illustrations and/or block diagrams, and combinations of processes and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing device to produce a machine that causes instructions to be executed by the processor of the computer or other programmable data processing device. Means are generated for implementing the functions specified in the process or processes of the flowchart diagrams and/or the block or blocks of the block diagrams.

這些電腦程式指令也可儲存在能引導電腦或其他可程式設計資料處理設備以特定方式工作的電腦可讀記憶體中,使得儲存在該電腦可讀記憶體中的指令產生包括指令裝置的製造品,該指令裝置實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。These computer program instructions may also be stored in a computer-readable memory that causes a computer or other programmable data processing device to operate in a specific manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including the instruction device. , the instruction device implements the functions specified in one process or multiple processes of the flow chart and/or one block or multiple blocks of the block diagram.

這些電腦程式指令也可裝載到電腦或其他可程式設計資料處理設備上,使得在電腦或其他可程式設計設備上執行一系列操作步驟以產生電腦實現的處理,從而在電腦或其他可程式設計設備上執行的指令提供用於實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。These computer program instructions may also be loaded onto a computer or other programmable data processing device, causing a series of operating steps to be performed on the computer or other programmable device to produce computer-implemented processing, thereby causing the computer or other programmable device to perform a computer-implemented process. The instructions executed on provide steps for implementing the functions specified in a process or processes of the flow diagrams and/or a block or blocks of the block diagrams.

以上所述,僅為本申請的較佳實施例而已,並非用於限定本申請的保護範圍。凡在本申請的精神和範圍之內所作的任何修改、等同替換和改進等,均包含在本申請的保護範圍之內。The above descriptions are only preferred embodiments of the present application and are not intended to limit the protection scope of the present application. Any modifications, equivalent substitutions and improvements made within the spirit and scope of this application are included in the protection scope of this application.

1:解碼器 11:解析部分 12:第一分組部分 13:第一預測部分 14:解碼部分 2:編碼器 21:下採樣部分 22:第二分組部分 23:第二預測部分 24:編碼部分 3:解碼器 32:第一記憶體 33:第一處理器 34:第一通訊匯流排 4:編碼器 42:第二記憶體 43:第二處理器 44:第二通訊匯流排 S101~S104:步驟 S1021~S1022:步驟 S1031~S1034:步驟 S201~S202:步驟 S401~S404:步驟 S4031~S4033:步驟 1:Decoder 11: Analysis part 12: The first grouping part 13: First prediction part 14: Decoding part 2: Encoder 21: Downsampling part 22:Second grouping part 23: Second prediction part 24: Coding part 3:Decoder 32: First memory 33:First processor 34:First communication bus 4: Encoder 42: Second memory 43: Second processor 44: Second communication bus S101~S104: Steps S1021~S1022: Steps S1031~S1034: steps S201~S202: steps S401~S404: steps S4031~S4033: steps

圖1為G-PCC編碼的流程框圖;Figure 1 is a flow chart of G-PCC encoding;

圖2為G-PCC解碼的流程框圖;Figure 2 is a flow chart of G-PCC decoding;

圖3為本申請實施例提供的編碼方法的一種可選的流程示意圖;Figure 3 is an optional flow diagram of the encoding method provided by the embodiment of the present application;

圖4為本申請實施例提供的體素下採樣的一種可選的過程示意圖;Figure 4 is a schematic diagram of an optional process of voxel downsampling provided by an embodiment of the present application;

圖5A為本申請實施例提供的尺度p點雲中體素的佔用符號的一種可選的效果示意圖;Figure 5A is an optional schematic diagram of the occupancy symbols of voxels in the scale p point cloud provided by the embodiment of the present application;

圖5B為本申請實施例提供的尺度p-1點雲中體素的佔用符號的一種可選的效果示意圖;Figure 5B is an optional schematic diagram of the occupancy symbols of voxels in the scale p-1 point cloud provided by the embodiment of the present application;

圖6為本申請實施例提供的編碼方法的一種可選的流程示意圖;Figure 6 is an optional flow diagram of the encoding method provided by the embodiment of the present application;

圖7為本申請實施例提供的編碼方法的一種可選的流程示意圖;Figure 7 is an optional flow diagram of the encoding method provided by the embodiment of the present application;

圖8為本申請實施例提供的上採樣與劃分處理的一種可選的過程示意圖;Figure 8 is a schematic diagram of an optional process of upsampling and dividing provided by the embodiment of the present application;

圖9為本申請實施例提供的編碼方法的一種可選的流程示意圖;Figure 9 is an optional flow diagram of the encoding method provided by the embodiment of the present application;

圖10為本申請實施例提供的分組依次佔用概率預測過程的一種可選的示意圖;Figure 10 is an optional schematic diagram of the group sequential occupancy probability prediction process provided by the embodiment of the present application;

圖11為本申請實施例提供的點雲中體素的佔用概率的一種可選的效果示意圖;Figure 11 is an optional effect diagram of the occupancy probability of voxels in the point cloud provided by the embodiment of the present application;

圖12為本申請實施例提供的解碼方法的一種可選的流程示意圖;Figure 12 is an optional flow diagram of the decoding method provided by the embodiment of the present application;

圖13為本申請實施例提供的解碼方法的一種可選的流程示意圖;Figure 13 is an optional flow diagram of the decoding method provided by the embodiment of the present application;

圖14為本申請實施例提供的編解碼方法應用於實際場景的一種可選的過程示意圖;Figure 14 is an optional process schematic diagram of applying the encoding and decoding method provided by the embodiment of the present application to an actual scenario;

圖15為本申請實施例提供的解碼器的一種可選的結構示意圖;Figure 15 is an optional structural schematic diagram of a decoder provided by an embodiment of the present application;

圖16為本申請實施例提供的編碼器的一種可選的結構示意圖;Figure 16 is an optional structural schematic diagram of an encoder provided by an embodiment of the present application;

圖17為本申請實施例提供的解碼器的一種可選的結構示意圖;Figure 17 is an optional structural schematic diagram of a decoder provided by an embodiment of the present application;

圖18為本申請實施例提供的編碼器的一種可選的結構示意圖。Figure 18 is an optional structural schematic diagram of an encoder provided by an embodiment of the present application.

S101~S104:步驟 S101~S104: Steps

Claims (26)

一種解碼方法,包括: 解析碼流,確定第一尺度點雲對應的佔用指示資訊; 確定第二尺度點雲,並對所述第二尺度點雲進行上採樣與劃分處理,確定m組上採樣體素;其中,所述第二尺度點雲為所述第一尺度點雲對應的前一個已解碼的點雲資料;m為大於或等於1的整數; 對所述m組上採樣體素依次進行佔用概率預測,確定m組佔用概率,並根據所述m組佔用概率對所述佔用指示資訊進行解碼,確定所述m組各自的佔用符號; 基於所述m組佔用符號,確定所述第一尺度點雲對應的重建幾何資料。 A decoding method including: Analyze the code stream to determine the occupancy indication information corresponding to the first scale point cloud; Determine the second scale point cloud, perform upsampling and division processing on the second scale point cloud, and determine m groups of upsampled voxels; wherein the second scale point cloud is the corresponding point cloud of the first scale point cloud. The previous decoded point cloud data; m is an integer greater than or equal to 1; Predict the occupancy probabilities of the m groups of upsampled voxels in sequence, determine the m groups of occupancy probabilities, decode the occupancy indication information according to the m groups of occupancy probabilities, and determine the respective occupancy symbols of the m groups; Based on the m sets of occupancy symbols, the reconstructed geometric data corresponding to the first scale point cloud is determined. 根據請求項1所述的方法,其中,所述對所述第二尺度點雲進行上採樣與劃分處理,確定m組上採樣體素,包括: 對所述第二尺度點雲進行體素上採樣,確定第一尺度的n個上採樣體素;n為大於1的整數; 對所述n個上採樣體素中的每個上採樣體素進行編號,並基於每個上採樣體素對應的編號進行分組,確定所述m組上採樣體素。 The method according to claim 1, wherein the upsampling and dividing process on the second scale point cloud to determine m groups of upsampled voxels includes: Perform voxel upsampling on the second scale point cloud to determine n upsampled voxels of the first scale; n is an integer greater than 1; Each of the n upsampled voxels is numbered, and grouped based on the number corresponding to each upsampled voxel, to determine the m groups of upsampled voxels. 根據請求項1或2所述的方法,其中,所述對所述m組上採樣體素依次進行佔用概率預測,確定m組佔用概率,並根據所述m組佔用概率對所述佔用指示資訊進行解碼,確定所述m組各自的佔用符號,包括: 在所述m組上採樣體素中,對第1組上採樣體素進行佔用概率預測,確定第一組佔用概率,並根據所述第一組佔用概率對所述佔用指示資訊進行解碼,確定第一組佔用符號; 在i大於1且小於或等於m時,利用已解碼的至少k組佔用符號,對第i組上採樣體素進行佔用概率預測,確定第i組佔用概率,並根據所述第i組佔用概率,對所述佔用指示資訊中的第i組佔用指示資訊進行解碼,確定第i組佔用符號;其中,i為整數,k為大於或等於1且小於i的整數; 基於所述第i組佔用符號繼續下一組解碼,直至確定所述m組各自的佔用符號。 The method according to claim 1 or 2, wherein the occupancy probability prediction is performed on the m groups of upsampled voxels in sequence, the m groups of occupancy probabilities are determined, and the occupancy indication information is calculated according to the m groups of occupancy probabilities. Decode and determine the occupied symbols of each of the m groups, including: In the m groups of upsampled voxels, the occupancy probability is predicted for the first group of upsampled voxels, the first group of occupancy probabilities are determined, and the occupancy indication information is decoded according to the first group of occupancy probabilities to determine The first group of occupied symbols; When i is greater than 1 and less than or equal to m, use at least k groups of decoded occupancy symbols to predict the occupancy probability of the i-th group of upsampled voxels, determine the i-th group of occupancy probabilities, and use the i-th group of occupancy probabilities to , decode the i-th group of occupancy indication information in the occupancy indication information to determine the i-th group of occupancy symbols; where i is an integer, k is an integer greater than or equal to 1 and less than i; Decoding continues with the next set of occupancy symbols based on the i-th set of occupancy symbols until the respective occupancy symbols of the m sets are determined. 根據請求項2所述的方法,其中,所述對所述n個上採樣體素中的每個上採樣體素進行編號,並基於每個上採樣體素對應的編號進行分組,確定所述m組上採樣體素,包括: 對所述n個上採樣體素中的每個上採樣體素進行編號,確定所述每個上採樣體素對應的編號; 根據所述每個上採樣體素的編號,對所述n個上採樣體素進行分組,確定所述m組上採樣體素。 The method according to claim 2, wherein each of the n upsampled voxels is numbered and grouped based on the number corresponding to each upsampled voxel to determine the m groups of upsampled voxels, including: Number each of the n upsampled voxels, and determine the number corresponding to each of the upsampled voxels; According to the number of each upsampled voxel, the n upsampled voxels are grouped to determine the m groups of upsampled voxels. 根據請求項4所述的方法,其中,所述根據所述每個上採樣體素的編號,對所述n個上採樣體素進行分組,確定所述m組上採樣體素,包括: 在所述n個上採樣體素中,根據所述每個上採樣體素的編號,將編號相同的上採樣體素劃分為一組,確定所述m組上採樣體素。 The method according to claim 4, wherein said grouping the n upsampled voxels according to the number of each upsampled voxel and determining the m groups of upsampled voxels includes: Among the n upsampled voxels, the upsampled voxels with the same number are divided into one group according to the number of each upsampled voxel, and the m groups of upsampled voxels are determined. 根據請求項4所述的方法,其中,所述根據所述每個上採樣體素的編號,對所述n個上採樣體素進行分組,確定所述m組上採樣體素,包括: 確定至少兩個連續編號; 根據所述每個上採樣體素的編號,將所述至少兩個連續編號在所述n個上採樣體素中對應的上採樣體素作為一組,確定所述m組上採樣體素。 The method according to claim 4, wherein said grouping the n upsampled voxels according to the number of each upsampled voxel and determining the m groups of upsampled voxels includes: Identify at least two consecutive numbers; According to the number of each upsampled voxel, the upsampled voxels corresponding to the at least two consecutive numbers in the n upsampled voxels are taken as a group to determine the m group of upsampled voxels. 根據請求項3所述的方法,其中,所述利用已解碼的至少k組佔用符號,對第i組上採樣體素進行佔用概率預測,確定第i組佔用概率,包括: 對所述第i組上採樣體素進行特徵提取,確定第i組體素特徵; 確定已解碼的第i-k組佔用符號至第i-1組佔用符號為所述至少k組佔用符號; 根據所述至少k組佔用符號,結合所述第i組體素特徵,對所述第i組上採樣體素中每個上採樣體素進行佔用概率預測,確定預測得到的所述第i組上採樣體素中每個上採樣體素對應的佔用概率為所述第i組佔用概率。 The method according to claim 3, wherein the use of at least k groups of decoded occupancy symbols to predict the occupancy probability of the i-th group of upsampled voxels and determine the i-th group of occupancy probabilities includes: Perform feature extraction on the i-th group of upsampled voxels to determine the characteristics of the i-th group of voxels; Determine that the decoded i-kth group of occupied symbols to the i-1th group of occupied symbols are the at least k groups of occupied symbols; According to the at least k groups of occupancy symbols, combined with the i-th group of voxel features, the occupancy probability is predicted for each up-sampled voxel in the i-th group of up-sampled voxels, and the predicted i-th group of voxels are determined. The occupancy probability corresponding to each upsampled voxel in the upsampled voxels is the i-th group of occupancy probabilities. 根據請求項1、2、4至7任一項所述的方法,其中,所述確定第二尺度點雲之前,所述方法還包括: 解析所述碼流,確定第T尺度點雲,以及第T-1尺度點雲對應的第T-1佔用指示資訊;其中,j=T,T-1,…,3;T為大於或等於3的整數; 從j=T開始,按照從大到小的順序對j的每一個取值執行以下處理: 基於第j尺度點雲進行體素上採樣與劃分處理,並對劃分後的分組依次進行佔用概率預測,確定第j-1尺度點雲中m個分組對應的m組佔用概率; 根據所述第j-1尺度點雲中m個分組對應的m組佔用概率,對所述第j-1佔用指示資訊進行熵解碼,確定所述第j-1佔用指示資訊對應的m組佔用符號; 基於所述第j-1佔用指示資訊對應的m組佔用符號,重建第j-1尺度點雲; 繼續根據j的下一個取值進行下一次處理,直至j=3時,重建得到所述第二尺度點雲。 The method according to any one of claims 1, 2, 4 to 7, wherein before determining the second scale point cloud, the method further includes: Analyze the code stream to determine the T-th scale point cloud and the T-1th occupancy indication information corresponding to the T-1th scale point cloud; where, j=T, T-1,...,3; T is greater than or equal to an integer of 3; Starting from j=T, perform the following processing on each value of j in order from large to small: Perform voxel upsampling and division processing based on the j-th scale point cloud, and perform occupancy probability prediction on the divided groups in sequence to determine m group occupancy probabilities corresponding to m groups in the j-1th scale point cloud; According to m groups of occupancy probabilities corresponding to m groups in the j-1th scale point cloud, entropy decoding is performed on the j-1th occupancy indication information to determine m groups of occupancy corresponding to the j-1th occupancy indication information. symbol; Based on the m sets of occupancy symbols corresponding to the j-1th occupancy indication information, reconstruct the j-1th scale point cloud; Continue to perform the next processing according to the next value of j until j=3, and reconstruct the second scale point cloud. 根據請求項3所述的方法,其中,所述根據所述第i組佔用概率,對所述佔用指示資訊中的第i組佔用指示資訊進行解碼,確定第i組佔用符號,包括: 根據所述第i組佔用概率,對所述第i組佔用指示資訊中每個佔用指示資訊進行熵解碼,確定所述第i組佔用指示資訊中每個佔用指示資訊對應的佔用符號,從而確定所述第i組佔用符號;其中, 所述佔用符號包括:第一佔用符與第二佔用符;所述第一佔用符表徵對應體素被佔據;所述第二佔用符表徵對應體素未被佔據。 The method according to claim 3, wherein decoding the i-th group of occupancy indication information in the occupancy indication information according to the i-th group of occupancy probabilities and determining the i-th group of occupancy symbols includes: According to the i-th group of occupancy probabilities, entropy decoding is performed on each occupancy indication information in the i-th group of occupancy indication information, and the occupancy symbol corresponding to each occupancy indication information in the i-th group of occupancy indication information is determined, thereby determining The i-th group of occupied symbols; where, The occupancy symbols include: a first occupancy symbol and a second occupancy symbol; the first occupancy symbol represents that the corresponding voxel is occupied; and the second occupancy symbol represents that the corresponding voxel is not occupied. 根據請求項3所述的方法,其中,所述基於所述第i組佔用符號繼續下一組解碼,直至確定所述m組各自的佔用符號,包括: 利用包含所述第i組佔用符號的至少k組佔用符號,對第i+1組上採樣體素進行佔用概率預測,並根據第i+1組佔用概率對所述佔用指示資訊中的第i+1組佔用指示資訊進行解碼,確定第i+1組佔用符號,直至對所述佔用指示資訊解碼完成,確定所述m組各自的佔用符號。 The method according to claim 3, wherein said continuing the next group of decoding based on the i-th group of occupied symbols until the respective m groups of occupied symbols are determined includes: Using at least k groups of occupancy symbols including the i-th group of occupancy symbols, perform occupancy probability prediction on the i+1 group of upsampled voxels, and predict the i-th group of occupancy indication information based on the i+1-th group of occupancy probabilities. The +1 group of occupancy indication information is decoded to determine the i+1 group of occupancy symbols, until the decoding of the occupancy indication information is completed, and the respective occupancy symbols of the m groups are determined. 一種編碼方法,包括: 對第一尺度點雲進行體素下採樣,確定第二尺度點雲; 對所述第二尺度點雲進行上採樣與劃分處理,確定m組上採樣體素;m為大於或等於1的整數; 對所述m組上採樣體素依次進行佔用概率預測,確定m組佔用概率,根據所述m組佔用概率確定所述m組各自的佔用符號; 對所述m組各自的佔用符號進行編碼,確定所述第一尺度點雲對應的佔用指示資訊,並將所述佔用指示資訊寫入碼流。 A coding method that includes: Perform voxel downsampling on the first-scale point cloud to determine the second-scale point cloud; Perform upsampling and division processing on the second scale point cloud to determine m groups of upsampled voxels; m is an integer greater than or equal to 1; Predict the occupancy probability of the m groups of upsampled voxels in sequence, determine the m group of occupancy probabilities, and determine the respective occupancy symbols of the m groups according to the m group of occupancy probabilities; The m groups of respective occupancy symbols are encoded to determine the occupancy indication information corresponding to the first scale point cloud, and the occupancy indication information is written into the code stream. 根據請求項11所述的方法,其中,所述對所述第二尺度點雲進行上採樣與劃分處理,確定m組上採樣體素,包括: 對第二尺度點雲進行體素上採樣,確定第一尺度的n個上採樣體素;n為大於1的整數; 對所述n個上採樣體素中的每個上採樣體素進行編號,並基於每個上採樣體素對應的編號進行分組,確定m組上採樣體素。 The method according to claim 11, wherein the upsampling and dividing process on the second scale point cloud to determine m groups of upsampled voxels includes: Perform voxel upsampling on the second scale point cloud to determine n upsampled voxels of the first scale; n is an integer greater than 1; Each of the n upsampled voxels is numbered, and grouped based on the number corresponding to each upsampled voxel, to determine m groups of upsampled voxels. 根據請求項11所述的方法,其中,所述對所述m組上採樣體素依次進行佔用概率預測,確定m組佔用概率,根據所述m組佔用概率確定所述m組各自的佔用符號,包括: 在所述m組上採樣體素中,對第1組上採樣體素進行佔用概率預測,確定第一組佔用概率,並利用預設佔用符表示所述第一組佔用概率,確定第一組佔用符號; 在i大於1且小於或等於m時,利用已完成概率預測與佔用符表示的至少k組上採樣體素對應的至少k組佔用符號,對第i組上採樣體素進行佔用概率預測,確定第i組佔用概率;其中,i為整數,k為大於或等於1且小於i的整數; 利用所述預設佔用符表示所述第i組佔用概率,確定第i組佔用符號; 利用包含所述第i組佔用符號的至少k組佔用符號,繼續對第i+1組上採樣體素進行佔用概率預測與佔用符表示,直至確定所述m組各自的佔用符號。 The method according to claim 11, wherein the occupancy probability prediction is performed on the m groups of upsampled voxels in sequence, the m groups of occupancy probabilities are determined, and the respective occupancy symbols of the m groups are determined according to the m groups of occupancy probabilities. ,include: In the m groups of upsampled voxels, the occupancy probability of the first group of upsampled voxels is predicted to determine the occupancy probability of the first group, and the preset occupancy symbol is used to represent the occupancy probability of the first group, and the occupancy probability of the first group is determined. occupancy symbol; When i is greater than 1 and less than or equal to m, use the completed probability prediction and at least k groups of occupancy symbols corresponding to at least k groups of upsampled voxels represented by the occupancy symbols to predict the occupancy probability of the i-th group of upsampled voxels, and determine Occupancy probability of the i-th group; where i is an integer, k is an integer greater than or equal to 1 and less than i; Use the preset occupancy symbols to represent the i-th group of occupancy probabilities and determine the i-th group of occupancy symbols; Using at least k groups of occupancy symbols including the i-th group of occupancy symbols, continue to perform occupancy probability prediction and occupancy symbol representation on the i+1-th group of upsampled voxels until the respective occupancy symbols of the m groups are determined. 根據請求項12所述的方法,其中,所述對所述n個上採樣體素中的每個上採樣體素進行編號,並基於每個上採樣體素對應的編號進行分組,確定m組上採樣體素,包括: 對所述n個上採樣體素中的每個上採樣體素進行編號,確定所述每個上採樣體素對應的編號; 根據所述每個上採樣體素的編號,對所述n個上採樣體素進行分組,確定所述m組上採樣體素。 The method according to claim 12, wherein each of the n upsampled voxels is numbered and grouped based on the number corresponding to each upsampled voxel to determine m groups Upsampled voxels, including: Number each of the n upsampled voxels, and determine the number corresponding to each of the upsampled voxels; According to the number of each upsampled voxel, the n upsampled voxels are grouped to determine the m groups of upsampled voxels. 根據請求項14所述的方法,其中,所述根據所述每個上採樣體素的編號,對所述n個上採樣體素進行分組,確定所述m組上採樣體素,包括: 在所述n個上採樣體素中,根據所述每個上採樣體素的編號,將編號相同的上採樣體素劃分為一組,確定所述m組上採樣體素。 The method according to claim 14, wherein said grouping the n upsampled voxels according to the number of each upsampled voxel and determining the m groups of upsampled voxels includes: Among the n upsampled voxels, the upsampled voxels with the same number are divided into one group according to the number of each upsampled voxel, and the m groups of upsampled voxels are determined. 根據請求項14所述的方法,其中,所述根據所述每個上採樣體素的編號,對所述n個上採樣體素進行分組,確定所述m組上採樣體素,包括: 確定至少兩個連續編號; 根據所述每個上採樣體素的編號,將所述至少兩個連續編號在所述n個上採樣體素中對應的上採樣體素作為一組,確定所述m組上採樣體素。 The method according to claim 14, wherein said grouping the n upsampled voxels according to the number of each upsampled voxel and determining the m groups of upsampled voxels includes: Identify at least two consecutive numbers; According to the number of each upsampled voxel, the upsampled voxels corresponding to the at least two consecutive numbers in the n upsampled voxels are taken as a group to determine the m group of upsampled voxels. 根據請求項13所述的方法,其中,所述利用已完成概率預測與佔用符表示的至少k組上採樣體素對應的至少k組佔用符號,對第i組上採樣體素進行佔用概率預測,確定第i組佔用概率,包括: 對所述第i組上採樣體素進行特徵提取,確定第i組體素特徵; 確定已完成概率預測與佔用符表示的第i-k組佔用符號至第i-1組佔用符號為所述至少k組佔用符號; 根據所述至少k組佔用符號,結合所述第i組體素特徵,對所述第i組上採樣體素中每個上採樣體素進行佔用概率預測,確定所述第i組上採樣體素中每個上採樣體素對應的佔用概率為所述第i組佔用概率。 The method according to claim 13, wherein the occupancy probability prediction is performed on the i-th group of upsampled voxels using at least k groups of occupancy symbols corresponding to at least k groups of upsampled voxels represented by completed probability predictions and occupancy symbols. , determine the occupancy probability of the i-th group, including: Perform feature extraction on the i-th group of upsampled voxels to determine the characteristics of the i-th group of voxels; Determine that the i-kth group of occupied symbols to the i-1th group of occupied symbols that have completed probability prediction and occupancy symbol representation are the at least k groups of occupied symbols; According to the at least k groups of occupancy symbols, combined with the i th group of voxel characteristics, the occupancy probability is predicted for each upsampled voxel in the i th group of upsampled voxels, and the i th group of upsampled voxels are determined The occupancy probability corresponding to each upsampled voxel in the voxel is the ith group of occupancy probabilities. 根據請求項13所述的方法,其中,所述利用所述預設佔用符表示所述第i組佔用概率,確定第i組佔用符號,包括: 利用所述預設佔用符中的第一佔用符號,表示所述第i組佔用概率中大於或等於預設概率閾值的佔用概率;並利用所述預設佔用符中的第二佔用符號,表示所述第i組佔用概率中小於所述預設概率閾值的佔用概率,確定所述第i組佔用符號。 The method according to claim 13, wherein said using the preset occupancy symbols to represent the i-th group of occupancy probabilities and determining the i-th group of occupancy symbols includes: Using the first occupancy symbol in the preset occupancy symbols represents the occupancy probability in the i-th group of occupancy probabilities that is greater than or equal to the preset probability threshold; and using the second occupancy symbol in the preset occupancy symbols represents The occupancy probability of the i-th group of occupancy probabilities that is less than the preset probability threshold determines the i-th group of occupied symbols. 根據請求項11至18任一項所述的方法,其中,所述對所述m組各自的佔用符號進行編碼,確定所述第一尺度點雲對應的佔用指示資訊,包括: 對所述m組各自的佔用符號中每組佔用符進行熵編碼,確定編碼得到的m組佔用指示資訊為所述第一尺度點雲對應的佔用指示資訊。 The method according to any one of claims 11 to 18, wherein encoding the m groups of respective occupancy symbols and determining the occupancy indication information corresponding to the first scale point cloud includes: Entropy encoding is performed on each group of occupancy symbols in the m groups of respective occupancy symbols, and the m groups of occupancy indication information obtained by encoding are determined to be occupancy indication information corresponding to the first scale point cloud. 根據請求項11至18任一項所述的方法,其中,所述方法還包括: 基於所述第二尺度點雲進行至少S次體素下採樣,確定第三尺度點雲至第S+2尺度點雲;S為大於或等於1的整數; 分別對所述第三尺度點雲至所述第S+2尺度點雲進行體素上採樣與劃分處理、並分別對劃分後的分組依次進行佔用概率預測與編碼,確定所述第二尺度點雲的佔用指示資訊至第S+1尺度點雲的佔用指示資訊; 將所述第一尺度點雲的佔用指示資訊、所述第二尺度點雲的佔用指示資訊至所述第S+1尺度點雲的佔用指示資訊寫入碼流。 The method according to any one of claims 11 to 18, wherein the method further includes: Perform at least S times of voxel downsampling based on the second scale point cloud to determine the third scale point cloud to the S+2th scale point cloud; S is an integer greater than or equal to 1; Perform voxel upsampling and division processing on the third scale point cloud to the S+2th scale point cloud respectively, and perform occupancy probability prediction and coding on the divided groups in sequence to determine the second scale point. The occupancy indication information of the cloud to the occupancy indication information of the S+1th scale point cloud; The occupancy indication information of the first scale point cloud, the occupancy indication information of the second scale point cloud to the occupancy indication information of the S+1th scale point cloud are written into the code stream. 一種解碼器,包括: 解析部分,配置為解析碼流,確定第一尺度點雲對應的佔用指示資訊; 第一分組部分,配置為確定第二尺度點雲,並對所述第二尺度點雲進行上採樣與劃分處理,確定m組上採樣體素;其中,所述第二尺度點雲為所述第一尺度點雲對應的前一個已解碼的點雲資料;m為大於或等於1的整數; 第一預測部分,配置為對所述m組上採樣體素依次進行佔用概率預測,確定m組佔用概率,並根據所述m組佔用概率對所述佔用指示資訊進行解碼,確定所述m組各自的佔用符號; 解碼部分,配置為基於所述m組佔用符號,確定所述第一尺度點雲對應的重建幾何資料。 A decoder including: The parsing part is configured to parse the code stream and determine the occupancy indication information corresponding to the first scale point cloud; The first grouping part is configured to determine the second scale point cloud, perform upsampling and dividing processing on the second scale point cloud, and determine m groups of upsampled voxels; wherein the second scale point cloud is the The previous decoded point cloud data corresponding to the first scale point cloud; m is an integer greater than or equal to 1; The first prediction part is configured to predict the occupancy probabilities of the m groups of upsampled voxels in sequence, determine the m groups of occupancy probabilities, and decode the occupancy indication information according to the m groups of occupancy probabilities to determine the m groups of occupancy probabilities. respective occupancy symbols; The decoding part is configured to determine the reconstructed geometric data corresponding to the first scale point cloud based on the m groups of occupied symbols. 一種編碼器,包括: 下採樣部分,配置為對第一尺度點雲進行體素下採樣,確定第二尺度點雲; 第二分組部分,配置為對所述第二尺度點雲進行上採樣與劃分處理,確定m組上採樣體素;m為大於或等於1的整數; 第二預測部分,配置為對所述m組上採樣體素依次進行佔用概率預測,確定m組佔用概率,根據所述m組佔用概率確定所述m組各自的佔用符號; 編碼部分,配置為對所述m組各自的佔用符號進行編碼,確定所述第一尺度點雲對應的佔用指示資訊,並將所述佔用指示資訊寫入碼流。 An encoder consisting of: The downsampling part is configured to perform voxel downsampling on the first-scale point cloud and determine the second-scale point cloud; The second grouping part is configured to perform upsampling and dividing processing on the second scale point cloud, and determine m groups of upsampled voxels; m is an integer greater than or equal to 1; The second prediction part is configured to predict the occupancy probability of the m groups of upsampled voxels in sequence, determine the m group of occupancy probabilities, and determine the respective occupancy symbols of the m groups according to the m group of occupancy probabilities; The encoding part is configured to encode the respective occupancy symbols of the m groups, determine the occupancy indication information corresponding to the first scale point cloud, and write the occupancy indication information into the code stream. 一種碼流,包括: 所述碼流是根據待編碼資訊進行位元編碼生成的;其中,所述待編碼資訊至少包括:第一尺度點雲對應的佔用指示資訊。 A code stream, including: The code stream is generated by bit encoding based on the information to be encoded; wherein the information to be encoded at least includes: occupancy indication information corresponding to the first scale point cloud. 一種解碼器,包括: 第一記憶體,配置為儲存可執行指令; 第一處理器,配置為執行所述第一記憶體中儲存的可執行指令時,實現請求項1至10任一項所述的方法。 A decoder including: a first memory configured to store executable instructions; The first processor is configured to implement the method described in any one of claims 1 to 10 when executing executable instructions stored in the first memory. 一種編碼器,包括: 第二記憶體,配置為儲存可執行指令; 第二處理器,配置為執行所述第二記憶體中儲存的可執行指令時,實現請求項11至20任一項所述的方法。 An encoder consisting of: a second memory configured to store executable instructions; The second processor is configured to implement the method described in any one of claims 11 to 20 when executing the executable instructions stored in the second memory. 一種電腦可讀儲存媒介,儲存有可執行指令,用於引起第一處理器執行時,實現請求項1至10任一項所述的方法,或者,用於引起第二處理器執行時,請求項11至20任一項所述的方法。A computer-readable storage medium storing executable instructions for causing the first processor to execute the method described in any one of claim items 1 to 10, or for causing the second processor to execute the request The method described in any one of items 11 to 20.
TW112125920A 2022-07-12 2023-07-11 Encoding method, decoding method, decoder, encoder and computer readable storage medium TW202406343A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
WOPCT/CN2022/105253 2022-07-12
PCT/CN2022/105253 WO2024011417A1 (en) 2022-07-12 2022-07-12 Encoding method, decoding method, decoder, encoder and computer readable storage medium

Publications (1)

Publication Number Publication Date
TW202406343A true TW202406343A (en) 2024-02-01

Family

ID=89535224

Family Applications (1)

Application Number Title Priority Date Filing Date
TW112125920A TW202406343A (en) 2022-07-12 2023-07-11 Encoding method, decoding method, decoder, encoder and computer readable storage medium

Country Status (2)

Country Link
TW (1) TW202406343A (en)
WO (1) WO2024011417A1 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10805646B2 (en) * 2018-06-22 2020-10-13 Apple Inc. Point cloud geometry compression using octrees and binary arithmetic encoding with adaptive look-up tables
CN113473127B (en) * 2020-03-30 2022-09-23 鹏城实验室 Point cloud geometric coding method, point cloud geometric decoding method, point cloud geometric coding equipment and point cloud geometric decoding equipment
CN113766228B (en) * 2020-06-05 2023-01-13 Oppo广东移动通信有限公司 Point cloud compression method, encoder, decoder, and storage medium
CN113613010A (en) * 2021-07-07 2021-11-05 南京大学 Point cloud geometric lossless compression method based on sparse convolutional neural network

Also Published As

Publication number Publication date
WO2024011417A1 (en) 2024-01-18

Similar Documents

Publication Publication Date Title
WO2021000658A1 (en) Point cloud encoding and decoding method, encoder, decoder, and computer storage medium
CN111641832B (en) Encoding method, decoding method, device, electronic device and storage medium
CN113613010A (en) Point cloud geometric lossless compression method based on sparse convolutional neural network
US11177823B2 (en) Data compression by local entropy encoding
JP7379524B2 (en) Method and apparatus for compression/decompression of neural network models
CN113537456B (en) Depth feature compression method
US9451291B1 (en) Fast DWT-based intermediate video codec optimized for massively parallel architecture
CN111641826B (en) Method, device and system for encoding and decoding data
CN114598891B (en) Point cloud data encoding method, decoding method, point cloud data processing method and device
CN113632142A (en) Method and device for point cloud compression
CN113747163B (en) Image coding and decoding method and compression method based on context recombination modeling
KR20220127837A (en) Method and apparatus for HAAR-based point cloud coding
TW202406344A (en) Point cloud geometry data augmentation method and apparatus, encoding method and apparatus, decoding method and apparatus, and encoding and decoding system
WO2024037091A1 (en) Point cloud processing method and apparatus, computer device, and storage medium
WO2024011417A1 (en) Encoding method, decoding method, decoder, encoder and computer readable storage medium
CN116546219A (en) Point cloud geometric color joint compression method based on learning
CN113382244B (en) Coding and decoding network structure, image compression method, device and storage medium
JP7394980B2 (en) Method, device and program for decoding neural network with block division
WO2024082105A1 (en) Encoding method, decoding method, decoder, encoder and computer-readable storage medium
JP2020053820A (en) Quantization and encoder creation method, compressor creation method, compressor creation apparatus, and program
CN113810058A (en) Data compression method, data decompression method, device and electronic equipment
WO2024082101A1 (en) Encoding method, decoding method, decoder, encoder, code stream, and storage medium
Jakob et al. A parallel approach to compression and decompression of triangle meshes using the GPU
WO2024011427A1 (en) Point cloud inter-frame compensation method and apparatus, point cloud encoding method and apparatus, point cloud decoding method and apparatus, and system
WO2023205969A1 (en) Point cloud geometric information compression method and apparatus, point cloud geometric information decompression method and apparatus, point cloud video encoding method and apparatus, and point cloud video decoding method and apparatus