TW202143709A - 針對基於幾何的點雲壓縮的三湯語法訊號傳遞 - Google Patents

針對基於幾何的點雲壓縮的三湯語法訊號傳遞 Download PDF

Info

Publication number
TW202143709A
TW202143709A TW110112694A TW110112694A TW202143709A TW 202143709 A TW202143709 A TW 202143709A TW 110112694 A TW110112694 A TW 110112694A TW 110112694 A TW110112694 A TW 110112694A TW 202143709 A TW202143709 A TW 202143709A
Authority
TW
Taiwan
Prior art keywords
point cloud
variable
cloud data
count
edges
Prior art date
Application number
TW110112694A
Other languages
English (en)
Inventor
巴佩迪亞 瑞
艾達希克里斯南 拉瑪蘇拉莫尼安
路易斯喬瑟夫 克羅夫斯基
吉爾特 范德奧維拉
瑪塔 卡克基維克茲
Original Assignee
美商高通公司
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 美商高通公司 filed Critical 美商高通公司
Publication of TW202143709A publication Critical patent/TW202143709A/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/20Contour coding, e.g. using detection of edges
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/001Model-based coding, e.g. wire frame
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/005Statistical coding, e.g. Huffman, run length coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Generation (AREA)

Abstract

用於處理點雲資料的實例設備包括被配置為儲存點雲資料的記憶體和在電路中實現的以及耦合到該記憶體的一或多個處理器。該一或多個處理器被配置為對包括頂點的點雲資料的立方體的邊緣的數量進行計數。該一或多個處理器被配置為基於該計數的總數來設置變數。該一或多個處理器亦被配置為基於該變數來處理該點雲資料。

Description

針對基於幾何的點雲壓縮的三湯語法訊號傳遞
本專利申請案主張於2020年4月8日提出申請的、編號為63/007,274的美國臨時專利申請案的利益,其全部內容以引用的方式併入。
本案內容係關於點雲編碼和解碼。
通常,本案內容描述用於針對基於幾何的點雲壓縮(G-PCC)的三湯(trisoup)訊號傳遞的技術。三湯是幾何譯碼選項,在其中G-PCC編碼器可以將在點雲中擷取的物件的表面表示為一系列的三角形網格。在一些實例中,本案內容的技術亦可以可應用於G-PCC和其他未來的標準。例如,並不是以訊號發送由G-PCC解碼器基於其他資訊可決定的三湯語法元素,G-PCC編碼器可以避免以訊號發送該語法元素以及G-PCC解碼器可以基於該其他資訊來決定該語法元素的值。以這種方式,本案內容的技術可以減少用於在三湯模式中對點雲資料進行編碼的位元的數量以及減少發送的經編碼的點雲資料的頻寬。
三維的方塊或立方體具有12個邊緣(例如,在正面的四個邊緣,在背面的四個邊緣,以及在正面與背面之間的四個邊緣)。在三湯模式中,幾何可以在每個立方體內表示為與立方體的每個邊緣相交最多一次的表面。因為存在立方體的12個邊緣,所以在立方體內可以存在最多12個此類交點。每個此類交點稱為頂點。
在一個實例中,本案內容描述包括如下操作的方法:對包括頂點的點雲資料的立方體的邊緣的數量進行計數,基於該計數的總數來設置變數,以及基於該變數來處理該點雲資料。
在另一實例中,本案內容描述包括如下各項的設備:被配置為儲存點雲資料的記憶體和在電路中實現的以及耦合到該記憶體的一或多個處理器,該一或多個處理器被配置為:對包括頂點的點雲資料的立方體的邊緣的數量進行計數;基於該計數的總數來設置變數;及基於該變數來處理該點雲資料。
在另一實例中,本案內容描述用於儲存指令的電腦可讀取儲存媒體,該等指令當被執行時使得一或多個處理器進行以下操作:對包括頂點的點雲資料的立方體的邊緣的數量進行計數;基於該計數的總數來設置變數;及基於該變數來處理點雲資料。
在另一實例中,本案內容描述包括如下各項的設備:用於對包括頂點的點雲資料的立方體的邊緣的數量進行計數的單元,用於基於該計數的總數來設置變數的單元,以及用於基於該變數來處理該點雲資料的單元。
在下文的附圖和描述中闡述了一或多個實例的細節。根據說明書、附圖和申請專利範圍,其他特徵、物件和優勢將是顯而易見的。
根據一些草案標準,諸如截至2020年4月7日的草案基於幾何的點雲壓縮(G-PCC)標準,語法元素可以由G-PCC編碼器以訊號發送給G-PCC解碼器,以便該解碼器可以決定如何解碼經編碼的資料。根據G-PCC草案標準,儘管G-PCC解碼器可能能夠決定經由來自在G-PCC解碼器處可用的其他的資訊的語法元素傳達的資訊,但是G-PCC編碼器可以以訊號發送與三湯模式相關聯的語法元素。三湯譯碼是幾何譯碼選項,在其中G-PCC編碼器可以將在點雲中擷取的物件的表面表示為一系列的三角形網格。照此,用於對點雲資料進行編碼的位元的數量可能比必需的要高,因此是對頻寬的低效使用。
根據本案內容的技術,G-PCC編碼器可能不以訊號發送此類語法元素,以及G-PCC解碼器可以經由對具有指定值的其他語法元素的數量進行計數來決定原本經由語法元素傳達的資訊。以這種方式,可以減少用於在三湯模式中對點雲資料進行編碼的位元的數量,以及可以類似地減少發送的經編碼的點雲資料的頻寬。
圖1是示出可以執行本案內容的技術的實例編碼和解碼系統100的方塊圖。本案內容的技術通常是針對譯碼(編碼及/或解碼)點雲資料,例如,以支援點雲壓縮。通常,點雲資料包括用於處理點雲的任何資料。譯碼可以在壓縮及/或解壓點雲資料中是有效的。
如圖1所示,系統100包括源設備102和目的地設備116。源設備102提供要由目的地設備116解碼的經編碼的點雲資料。特別地,在圖1的實例中,源設備102經由電腦可讀取媒體110向目的地設備116提供點雲資料。源設備102和目的地設備116可以包括範圍廣泛的設備中的任何設備:包括桌上型電腦、筆記本(例如,可攜式)電腦、平板電腦、機上盒、諸如智慧手機的手機、電視機、照相機、顯示裝置、數位媒體播放機、視訊遊戲控制台、視訊流式設備、陸地或海上運載工具、太空船、飛機、機器人、雷射雷達設備、衛星等。在一些情況下,源設備102和目的地設備116可以被配備用於無線通訊。
在圖1的實例中,源設備102包括資料來源104、記憶體106、G-PCC編碼器200和輸出介面108。目的地設備116包括輸入介面122、G-PCC解碼器300、記憶體120和資料使用者118。根據本案內容,源設備102的G-PCC編碼器200和目的地設備116的G-PCC解碼器300可以被配置為應用與三湯訊號傳遞有關的本案內容的技術。從而,源設備102代表編碼設備的實例,而目的地設備116代表解碼設備的實例。在其他實例中,源設備102和目的地設備116可以包括其他的部件或佈置。例如,源設備102可以從內部源或外部源接收資料(例如,點雲資料)。同樣地,目的地設備116可以與外部資料使用者相連接,而不是在同一設備中包括資料使用者。
圖1中所示的系統100是僅僅一個實例。通常,其他數位編碼及/或解碼設備可以執行與三湯訊號傳遞有關的本案內容的技術。源設備102和目的地設備116是僅僅此類設備的實例,在其中源設備102產生用於傳輸到目的地設備116的經譯碼的資料。本案內容將「解碼」設備稱為執行對資料的譯碼(編碼及/或解碼)的設備。從而,G-PCC編碼器200和G-PCC解碼器300分別地代表譯碼設備的實例,特別是,編碼器和解碼器。在一些實例中,源設備102和目的地設備116可以以大體上對稱的方式進行操作,使得源設備102和目的地設備116中的各者包括編碼和解碼用部件。因此,系統100可以在源設備102與目的地設備116之間支援單向或雙向傳輸,例如,用於流式、重放、廣播、電話、導航和其他應用。
通常,資料來源104代表資料(例如,原始的、未經編碼的點雲資料)的源,以及可以向G-PCC編碼器200提供資料的一系列連續的「訊框」,該G-PCC編碼器200對針對訊框的資料進行編碼。源設備102的資料來源104可以包括點雲擷取裝置,諸如各種照相機或感測器的任何一者,例如,3D掃瞄器或光探測和測距(雷射雷達)設備、一或多個攝像機、包含先前擷取的資料的檔案、及/或用於從資料內容提供者接收資料的資料饋送介面。補充地或替代地,點雲資料可以是從掃瞄器、照相機、感測器或其他資料來電腦產生的。例如,資料來源104可以產生基於電腦圖形的資料作為來源資料,或者產生即時資料、存檔資料和電腦產生的資料的組合。在每種情況下,G-PCC編碼器200對該擷取的、預擷取的或電腦產生的資料進行編碼。G-PCC編碼器200可以將該訊框從接收的順序(有時稱為「顯示順序」)重新排列為用於譯碼的譯碼順序。G-PCC編碼器200可以產生包括經編碼的資料的一或多個位元串流。隨後,源設備102可以經由輸出介面108將經編碼的資料輸出到電腦可讀取媒體110上,用於由例如目的地設備116的輸入介面122進行接收及/或取回。
源設備102的記憶體106和目的地設備116的記憶體120可以代表通用記憶體。在一些實例中,記憶體106和記憶體120可以儲存原始的資料,例如,來自資料來源104的原始的資料以及來自G-PCC解碼器300的原始的經解碼的資料。補充地或替代地,記憶體106和記憶體120可以分別地儲存由例如G-PCC編碼器200和G-PCC解碼器300可執行的軟體指令。儘管在本實例中記憶體106和記憶體120是分別地從G-PCC編碼器200和G-PCC解碼器300來示出的,但是應當理解的是,G-PCC編碼器200和G-PCC解碼器300亦可以包括出於功能上類似的或等效的目的的內部記憶體。此外,記憶體106和記憶體120可以儲存經編碼的資料,例如,來自G-PCC編碼器200的輸出以及去往G-PCC解碼器300的輸入。在一些實例中,記憶體106和記憶體120的部分可以被分配為一或多個緩衝區,例如,以儲存原始的、經解碼的及/或經編碼的資料。舉例說,記憶體106和記憶體120可以儲存代表點雲的資料。
電腦可讀取媒體110可以代表能夠將經編碼的資料從源設備102傳送給目的地設備116的任何類型的媒體或設備。在一個實例中,電腦可讀取媒體110代表使得源設備102能夠將經編碼的資料即時直接地發送給目的地設備116的通訊媒體,例如,經由射頻網路或基於電腦的網路。根據通訊標準,比如諸如無線通訊協定,輸出介面108可以對包括經編碼的資料的傳輸訊號進行調制,以及輸入介面122可以對接收的傳輸訊號進行解調。通訊媒體可以包括任何無線的通訊媒體或有線的通訊媒體,諸如射頻(RF)頻譜或一或多條實體的傳輸線。通訊媒體可以構成基於封包的網路的一部分,諸如區域網路、廣域網、或諸如網際網路的全球網路。通訊媒體可以包括路由器、交換機、基地台、或可以有助於促進從源設備102到目的地設備116的通訊的任何其他設備。
在一些實例中,源設備102可以將經編碼的資料從輸出介面108輸出到存放裝置112。類似地,目的地設備116可以經由輸入介面122存取來自存放裝置112的經編碼的資料。存放裝置112可以包括各種分散式的或本端存取的資料儲存媒體的任何一者,諸如硬碟、藍光光碟、DVD、CD-ROM、快閃記憶體、揮發性或非揮發性記憶體、或用於儲存經編碼的資料的任何其他適合的數位儲存媒體。
在一些實例中,源設備102可以將經編碼的資料輸出到檔案伺服器114或可以儲存由源設備102產生的經編碼的資料的另一中間存放裝置。目的地設備116可以經由流式或下載從檔案伺服器114存取儲存的資料。檔案伺服器114可以是能夠儲存經編碼的資料以及將該經編碼資料發送給目的地設備116的任何類型的伺服器設備。檔案伺服器114可以代表網路服務器(例如,用於網站)、檔案傳輸通訊協定(FTP)伺服器、內容傳遞網路設備、或者網路附加儲存(NAS)設備。目的地設備116可以經由任何標準資料連接來存取來自檔案伺服器114的經編碼的資料,該標準資料連接包括網際網路連接。這可以包括無線通道(例如,Wi-Fi連接)、有線連接(例如,數位用戶線路(DSL)、纜線數據機等)、或適合於存取儲存在檔案伺服器114上的經編碼的資料的兩者的組合。檔案伺服器114和輸入介面122可以被配置為根據流式傳輸協定、下載傳輸協定或其組合進行操作。
輸出介面108和輸入介面122可以代表無線發射器/接收器、數據機、有線聯網單元(例如,乙太網路卡)、根據各種IEEE 802.11標準中的任何一者進行操作的無線通訊部件、或其他實體部件。在輸出介面108和輸入介面122包括無線部件的實例中,輸出介面108和輸入介面122可以被配置為根據蜂巢通訊標準(諸如4G、4G-LTE(長期進化)、改進的LTE、5G等)來傳送資料,諸如經編碼的資料。在輸出介面108包括無線發射器的一些實例中,輸出介面108和輸入介面122可以被配置為根據其他無線標準(諸如IEEE 802.11規範、IEEE 802.15規範(例如,紫蜂™)、藍芽™標準等)來傳送資料,諸如經編碼的資料。在一些實例中,源設備102及/或目的地設備116可以包括各自的片上系統(SoC)設備。例如,源設備102可以包括用於執行歸因於G-PCC編碼器200及/或輸出介面108的功能性的SoC設備,以及目的地設備116可以包括用於執行歸因於G-PCC解碼器300及/或輸入介面122的功能性的SoC設備。
本案內容的技術可以應用於編碼和解碼以便支援各種應用中的任何一者,諸如在自動駕駛汽車之間的通訊、在掃瞄器、照相機、感測器和處理設備(諸如本端的或遠端的伺服器、地理映射或其他應用)之間的通訊。
目的地設備116的輸入介面122從電腦可讀取媒體110(例如,通訊媒體、存放裝置112、檔案伺服器114等)接收經編碼的位元串流。該經編碼的位元串流可以包括由G-PCC編碼器200定義的訊號傳遞資訊,其亦由G-PCC解碼器300使用,諸如具有描述特徵及/或對經譯碼的單元(例如,切片、圖片、圖片組、序列等)的處理的值的語法元素。資料使用者118使用經解碼的資料。例如,資料使用者118可以使用經解碼的資料來決定實體物件的位置。在一些實例中,資料使用者118可以包括用於基於點雲來呈現影像的顯示器。
G-PCC編碼器200和G-PCC解碼器300均可以實現為各種適合的編碼器及/或解碼器電路中的任何一者,諸如一或多個微處理器、數位訊號處理器(DSP)、特殊應用積體電路(ASIC)、現場可程式設計閘陣列(FPGA)、個別邏輯、軟體、硬體、韌體或其任何組合。當該等技術在軟體中部分地實現時,設備可以將針對軟體的指令儲存在適合的、非暫時性電腦可讀取媒體中以及使用一或多個處理器執行在硬體中的該等指令,以執行本案內容的技術。G-PCC編碼器200和G-PCC解碼器300中的各者可以是包括在一或多個編碼器或解碼器中的,其中的任何一者可以整合為在各自的設備中的組合的編碼器/解碼器(CODEC)的一部分。包括G-PCC編碼器200及/或G-PCC解碼器300的設備可以包括一或多個積體電路、微處理器及/或其他類型的設備。
G-PCC編碼器200和G-PCC解碼器300可以根據譯碼標準(諸如視訊點雲壓縮(V-PCC)標準或幾何點雲壓縮(G-PCC)標準)進行操作。本案內容通常引用對圖片的譯碼(例如,編碼和解碼)以包括編碼或解碼資料的程序。經編碼的位元串流通常包括針對表示譯碼決策(例如,譯碼模式)的語法元素的一系列的值。
本案內容通常引用「以訊號發送」某些資訊,諸如語法元素。術語「以訊號發送」通常指的是對針對語法元素及/或用於對經編碼的資料進行解碼的其他資料的值的傳送。亦即,G-PCC編碼器200可以在位元串流中以訊號發送針對語法元素的值。通常,以訊號發送指的是產生在位元串流中的值。如前述,源設備102可以將位元串流大體上即時地傳送到目的地設備116,或者非即時地(諸如當為了由目的地設備116以後取回而將語法元素儲存到存放裝置112時可能發生)傳送到目的地設備116。
ISO/IEC MPEG(JTC 1/SC 29/WG 11)正在研究針對具有顯著地超過當前方法的壓縮能力的壓縮能力的點雲譯碼技術的標準化的潛在需求,以及將以建立標準為目標。稱為三維圖形組(3DG)的團體正在試圖合作地對該探索活動一起工作,以評估由其在該領域中的專家提出的壓縮技術設計。
將點雲壓縮活動分類為兩種不同的方法。第一種方法是「視訊點雲壓縮」(V-PCC),其對3D物件進行分割,以及在多個2D平面中對分段進行投影(其表示為2D訊框中的「補丁」),其進一步由舊有2D視訊轉碼器(諸如高效視訊譯碼(HEVC)(ITU-T H.265)轉碼器)來譯碼。第二種方法是「基於幾何的點雲壓縮」(G-PCC),其直接地壓縮3D幾何,例如,3D空間中的一組點的位置,以及相關聯的屬性值(針對與3D幾何相關聯的每個點)。G-PCC設法解決對在類別1(靜態點雲)和類別3(動態獲取的點雲)兩者中的點雲的壓縮。G-PCC標準的最新草案是在G-PCC DIS, ISO/IEC JTC1/SC29/WG11 w19088,布魯塞爾,比利時,2020年一月中可獲得的,以及對轉碼器的描述是在G-PCC Codec Description(G-PCC轉碼器描述) v6,ISO/IEC JTC1/SC29/WG11 w19091,布魯塞爾,比利時,2020年一月中可獲得的。
點雲包含3D空間中的一組點,以及可以具有與該點相關聯的屬性。屬性可以是諸如R、G、B或Y、Cb、Cr、或反射資訊、或其他屬性的顏色資訊。點雲可以是由各種照相機或感測器(諸如雷射雷達感測器和3D掃瞄器)擷取的,以及亦可以是電腦產生的。點雲資料是在各種應用中使用的,應用包括但是不限於建築物(建模)、圖形(用於視覺化和動畫的3D模型)和汽車行業(用於幫助導航的雷射雷達感測器)。
由點雲資料佔用的3D空間可以是由虛擬的邊界框包圍的。點在邊界框中的位置可以是經由某個精度來代表的;因此,一或多個點的位置可以是基於該精度來量化的。在最小的級別處,邊界框被分割成體素,該體素是經由單位立方體代表的空間的最小單位。邊界框中的體素可以與零個、一個、或多於一個點相關聯。邊界框可以被分割成多個立方體/長方體區域,該立方體/長方體區域可以稱為瓦片。每個瓦片可以被譯碼為一或多個切片。對邊界框到切片和瓦片的劃分可以是基於每個分區中的點的數量,或者基於其他的考慮(例如,特定的區域可以被譯碼為瓦片)。切片區域可以是使用與在視訊轉碼器中的分割決策類似的分割決策來進一步劃分的。
圖2提供G-PCC編碼器200的概述。圖3提供G-PCC 解碼器300的概述。所示模組是邏輯的,以及不一定一對一地對應於在G-PCC轉碼器的參考實現方式中實現的代碼,即由ISO/IEC MPEG(JTC 1/SC 29/WG 11)研究的TMC13測試模型軟體。
在G-PCC編碼器200和G-PCC解碼器300兩者中,點雲位置是最先譯碼的。屬性譯碼取決於經解碼的幾何。在圖2和圖3中,灰色陰影的模組是通常用於類別1資料的選項。對角線陰影的模組是通常用於類別3資料的選項。所有的其他模組是在類別1與類別3之間公共的。
對於類別3資料,經壓縮的幾何通常表示為八叉樹,該八叉樹從根一直向下到單個體素的葉級別。對於類別1資料,經壓縮的幾何是通常經由經修剪的八叉樹(例如,從根向下到大於體素的塊的葉級別的八叉樹)加上近似該經修剪的八叉樹的每個葉內的表面的模型來代表的。以這種方式,類別1和類別3兩者資料共享八叉樹譯碼機制,而類別1資料可以另外利用表面模型來近似在每個葉內的體素。所使用的表面模型是每塊包括1-10個三角形的三角剖分,得到三角形湯。類別1幾何轉碼器因此被稱為三湯幾何轉碼器,而類別3幾何轉碼器被稱為八叉樹幾何轉碼器。
在八叉樹的每個節點處,為其子節點中的一或多個節點(最多8個節點)以訊號發送佔用情況(當未推測出時)。指定多個鄰域,該鄰域包括(a)與當前的八叉樹節點共享面的節點,(b)與當前八叉樹節點共享面、邊緣或頂點的節點等。在每個鄰域內,節點及/或其子的佔用情況可以用於預測當前節點或其子的佔用情況。對於稀疏地填充在八叉樹的某些節點中的點,轉碼器亦支援直接解碼模式,在該直接譯碼模式中對點的3D位置直接地進行編碼。標記可以是以訊號發送的來指示直接模式是以訊號發送的。在最低的級別處,亦可以對與八叉樹節點/葉節點相關聯的多個點進行譯碼。
一旦幾何被譯碼了,與幾何點相對應的屬性就被譯碼了。當存在與一個重構的/經解碼的幾何點相對應的多個屬性點時,可以匯出代表該重構的點的屬性值。
在G-PCC中存在三種屬性譯碼方法:區域自我調整分層變換(RAHT)譯碼、基於內插的分層最近鄰預測(預測變換)、和具有更新/提升步驟的基於內插的分層最近鄰預測(提升變換)。RAHT和提升是通常針對類別1資料來使用的,而預測是通常針對類別3資料來使用的。然而,任一方法可以是針對任何資料來使用的,以及就像G-PCC中的幾何轉碼器一樣,用於對點雲進行解碼的屬性譯碼方法是在位元串流中指定的。
對屬性的譯碼可以是在細節級別(LOD)中進行的,其中在細節的每個級別的情況下,可以獲得點雲屬性的更精細表示。細節的每個級別可以是基於來自鄰近節點的距離度量或基於取樣距離來指定的。
在G-PCC編碼器200處,對作為針對屬性的譯碼方法的輸出來獲得的殘差進行量化。所量化的殘差可以是使用上下文自我調整算術譯碼來譯碼的。
在圖2的實例中,G-PCC編碼器200可以包括座標變換單元202、顏色變換單元204、體素化單元206、屬性傳送單元208、八叉樹分析單元210、表面近似分析單元212、算術編碼單元214、幾何重構單元216、RAHT單元218、LOD產生單元220、提升單元222、係數量化單元224和算術編碼單元226。
如在圖2的實例中所示,G-PCC編碼器200可以接收一組位置和一組屬性。位置可以包括點在點雲中的座標。屬性可以包括關於點雲中的點的資訊,諸如與點雲中的點相關聯的顏色。
座標變換單元202可以將變換應用於點的座標,以將座標從初始域變換到變換域。本案內容可以將經變換的座標稱為變換座標。顏色變換單元204可以將變換應用於將屬性的顏色資訊變換到不同的域。例如,顏色變換單元204可以將顏色資訊從RGB顏色空間變換到YCbCr顏色空間。
此外,在圖2的實例中,體素化單元206可以將變換座標體素化。對變換座標的體素化可以包括對點雲中的一些點的量化以及移除。換句話說,可以將點雲中的多個點歸入在單一「體素」內,此後在一些態樣中可以將其作為一個點來對待。此外,八叉樹分析單元210可以基於所體素化的變換座標來產生八叉樹。另外地,在圖2的實例中,表面近似分析單元212可以分析點以潛在地決定點的集合的表面表示。
在一些實例中,表面近似分析單元212可以對包括頂點的點雲資料的立方體的邊緣的數量進行計數,以及基於該計數的總數來設置變數。在一些實例中,表面近似分析單元212亦可以至少部分地基於該變數來決定差。該差亦可以稱為增量。算術編碼單元214可以對代表八叉樹及/或由表面近似分析單元212決定的表面的資訊的語法元素進行熵編碼。G-PCC編碼器200可以在幾何位元串流中輸出這些語法元素。
幾何重構單元216可以基於八叉樹、用於指示由表面近似分析單元212決定的表面的資料、及/或其他資訊來重構點在點雲中的變換座標。由於體素化和表面近似,由幾何重構單元216重構的變換座標的數量可以是與點雲中的點的原始數量不同的。本案內容可以將作為結果的點稱為重構的點。屬性傳送單元208可以將點雲的原始點的屬性傳送給點雲的重構的點。
此外,RAHT單元218可以將RAHT譯碼應用於重構的點的屬性。補充地或替代地,LOD產生單元220和提升單元222可以分別地將LOD處理和提升應用於重構的點的屬性。RAHT單元218和提升單元222可以基於該屬性來產生係數。係數量化單元224可以對由RAHT單元218或提升單元222產生的係數進行量化。算術編碼單元226可以將算術譯碼應用於代表所量化的係數的語法元素。G-PCC編碼器200可以在屬性位元串流中輸出這些語法元素。
在圖3的實例中,G-PCC解碼器300可以包括幾何算術解碼單元302、屬性算術解碼單元304、八叉樹合成單元306、逆量化單元308、表面近似合成單元310、幾何重構單元312、RAHT單元314、LOD產生單元316、逆提升單元318、逆變換座標單元320、和逆變換顏色單元322。
G-PCC解碼器300可以獲得幾何位元串流和屬性位元串流。G-PCC解碼器300的幾何算術解碼單元302可以將算術譯碼(例如,上下文自我調整二進位算術解碼(CABAC)或其他類型的算術解碼)應用於幾何位元串流中的語法元素。類似地,屬性算術解碼單元304可以將算術解碼應用於屬性位元串流中的語法元素。
八叉樹合成單元306可以基於從幾何位元串流解析的語法元素來合成八叉樹。在幾何位元串流中使用表面近似的實例中,表面近似合成單元310可以基於從幾何位元串流解析的語法元素以及基於八叉樹來決定表面模型。在一些實例中,表面近似合成單元310可以對包括頂點的點雲資料的立方體的邊緣的數量進行計數,以及基於該計數的總數來設置變數。在一些實例中,表面近似合成單元310可以基於該變數和在位元串流中從G-PCC編碼器200接收的語法元素來決定差或增量。
此外,幾何重構單元312可以執行重構以決定點在點雲中的座標。逆變換座標單元320可以將逆變換應用於重構的座標,以將點在點雲中的重構的座標(位置)從變換域轉換回到初始域。
另外地,在圖3的實例中,逆量化單元308可以對屬性值進行逆量化。屬性值可以是基於從屬性位元串流獲得的語法元素(例如,包括由屬性算術解碼單元304解碼的語法元素)。
取決於屬性值是如何編碼的,RAHT單元314可以執行RAHT譯碼以基於逆量化的屬性值來決定針對點雲中的點的顏色值。或者,LOD產生單元316和逆提升單元318可以使用基於細節的技術的級別來決定針對點雲中的點的顏色值。
此外,在圖3的實例中,逆變換顏色單元322可以將逆顏色變換應用於顏色值。逆顏色變換可以是由G-PCC編碼器200的顏色變換單元204應用的顏色變換的逆。例如,顏色變換單元204可以將顏色資訊從RGB顏色空間變換到YCbCr顏色空間。相應地,逆顏色變換單元322可以將顏色資訊從YCbCr顏色空間變換到RGB顏色空間。
示出圖2和圖3的各種單元以協助理解由G-PCC編碼器200和G-PCC解碼器300執行的操作。該單元可以實現為固定功能電路、可程式設計電路、或其組合。固定功能電路指的是提供特定的功能的電路,且在可以執行的操作上預先設定。可程式設計電路指的是可以被程式設計為執行各種任務、以及提供在可以執行的操作中的靈活的功能的電路。舉例說,可程式設計電路可以執行使得可程式設計電路以由軟體或韌體的指令定義的方式進行操作的軟體或韌體。固定功能電路可以執行軟體指令(例如,以接收參數或輸出參數),但是固定功能電路執行的操作的類型通常是不可變的。在一些實例中,單元中的一或多個單元可以是不同的電路塊(固定功能或可程式設計的),以及在一些實例中,單元中的一或多個單元可以是積體電路。
現在進一步詳細地論述三湯譯碼。三湯譯碼是幾何譯碼選項,在其中G-PCC編碼器200可以將在點雲中擷取的物件的表面表示為一系列的三角形網格。三湯譯碼通常對於稠密的表面點雲是有用的。解碼器(例如,G-PCC解碼器300)可以利用指定的體素細微性來從網格表面重構點雲。
若使用三湯幾何譯碼,則可以使用參數trisoup_node_size(三湯_節點_大小)來定義以體素為單元的三角形節點的大小。(例如由G-PCC編碼器200執行的)八叉樹編碼以及(例如由G-PCC解碼器300執行的)解碼在葉級別l處停止,在此種情況下八叉樹的葉節點代表寬度為W=2^(max_node_size_log2,-l)(W=2^(最大_節點_大小_log2,-l))的立方體,以及八叉樹據說被修剪。在這種情況下,不允許推測出的直接譯碼模式。推測出的直接譯碼模式是促進直接地對位置的譯碼而不進一步進行八叉樹遞迴分割的譯碼模式。
若參數trisoup_node_size>0,則該立方體是2 x 2 x 2或更大,以及可以期望經由某個模型來代表立方體內的一批體素。在每個立方體內,幾何被表示為與立方體的每個邊緣相交最多一次的表面。因為存在立方體的12個邊緣,所以在立方體內可以存在最多12個此類交點。每個此類交點稱為頂點。在一些實例中,當且僅當在共享邊緣的所有立方體之中存在至少一個佔用的與該邊緣鄰近的體素,G-PCC編碼器200或G-PCC解碼器300可以偵測到沿著邊緣的頂點。偵測到的沿著邊緣的頂點的位置是在共享該邊緣的所有立方體之中沿著與該邊緣鄰近的所有此類體素的邊緣的平均位置。
頂點,名義上是表面與立方體的邊緣的交點,是跨越附近的立方體來共享的,不僅保證跨越重構的表面的立方體的連續性,而且亦減少對一批頂點進行譯碼所要求的位元的數量。頂點的集合可以是例如由G-PCC編碼器200或G-PCC解碼器300在兩個步驟中來譯碼的。例如,在第一步驟中,G-PCC編碼器200可以被配置為計算佔用的立方體的所有唯一邊緣(或分段)的集合。G-PCC編碼器200可以被配置為使用位元元向量(或分段指示符)來決定哪些分段包含頂點以及哪些不包含。在第二步驟中,對於包含頂點的每個分段,G-PCC編碼器200可以被配置為將一致地標量量化器應用於沿著分段的頂點的位置,以獲得少量的級別。若期望幾何空間解析度近似於體素解析度,則這個數量通常等於立方體大小,但是這個數量可以是任何數量的級別。算術編碼單元214可以對分段指示符和頂點位置進行熵編碼。幾何位元串流從而成為包括八叉樹、分段指示符和頂點位設定流的複合的位元串流。幾何算術解碼單元302可以對複合的位元串流進行解碼。
圖4是示出實例三湯表示的概念圖。在圖4的實例中,圖示立方體400。亦圖示具有在d的線之間的距離的規則的網格。三角形402與格線的交點被圈起來。這些圈起來的點代表將是重構的點雲的一部分的點。
在G-PCC草案標準內的三湯語法和語義如下所示:
geometry_trisoup_data( ) { 描述符
     trisoup_sampling_value_minus1 ae(v)
     num_unique_segments_minus1 ae(v)
     for( i = 0; i <= num_unique_segments_minus1; i++ )  
         segment_indicator[ i ] ae(v)
     num_vertices_minus1 ae(v)
     for( i = 0; i <= num_vertices_minus1; i++ )  
         vertex_position[ i ] ae(v)
}  
trisoup_sampling_value_minus1(三湯_取樣_值_減1)加1指定針對在8.2.3.3中指定的三湯解碼程序中在三角形表面上的點取樣的步長。 num_unique_segments_minus1(數量 _ 唯一 _ 分段 _ 減1 加1指定分段指示符的數量。 segment_indicator[i](分段_指示符[i])針對唯一的邊緣指示該邊緣是否與表面相交以及因此包含頂點(1)或不包含頂點(0)。 num_vertices_minus1(數量_頂點_減1)加1指定頂點的數量。 vertex_position[i](頂點_位置[i])指示沿著邊緣的頂點的位置。vertex_position[i]的值應該在0至(1 << log2_ trisoup_node_size)- 1(含(1 << log2_ trisoup_node_size)- 1)的範圍中。
根據G-PCC草案語法,表明唯一邊緣或分段的數量(例如,num_unique_segments_minus1)和頂點的數量(例如,num_vertices_minus1)兩者的語法元素是以訊號發送的。例如,G-PCC編碼器200可以以訊號發送num_unique_segments_minus1和num_vertices_minus1兩者。然而,對於每個唯一的邊緣,G-PCC編碼器200可以以訊號發送該邊緣是包含頂點(例如,三湯幾何和該邊緣的交點)還是不包含頂點(例如,沒有此類交點)作為segment_indicator。具有值為1的segment_indicator指示邊緣包含頂點,以及具有值為0的segment_indicator指示邊緣不包含頂點。因此,G-PCC解碼器300可以根據分段指示符(例如,segment_indicator)資訊來決定num_vertices_minus1。從而,可以改進針對三湯模式的訊號傳遞以移除用於提供由G-PCC 解碼器300可易於決定的資訊的語法元素。這可以減少訊號傳遞管理負擔。
另外地,num_unique_segments_minus1是利用具有階0的指數哥倫布碼(例如,EG(0))來譯碼的。然而,典型的點雲可以具有大約105 – 106個唯一的邊緣;從而對於對此類大數量來譯碼而言EG(0)譯碼可能不是最佳的。此外,隨著三湯節點大小減少和立方體的數量增加,唯一的邊緣的數量增加。
現在論述num_vertices_minus1的訊號傳遞。在一些實例中,根據本案內容的技術,G-PCC解碼器300可以對針對其segment_indicator[]是1的邊緣的數量進行計數。 count = 0 ; for( i = 0; i <= num_unique_segments_minus1; i++ ){ if (segment_indicator[ i ]  = = 1) count ++ ; }
隨後,G-PCC解碼器300可以將變數count_minus1(計數_減1)設置為(計數–1)。在一個實例中,count_minus1被用作為num_vertices_minus1的值,即num_vertices_minus1 = count_minus1。從而,num_vertices_minus1不是由G-PCC編碼器200以訊號發送的,以及反而是由G-PCC解碼器300基於count_minus1的值來匯出的。例如,G-PCC解碼器300可以根據count_minus1來決定num_vertices_minus1的值。下文示出對於草案G-PCC標準的修訂以反映這種技術。刪除的開始標記為<DELETE>以及刪除的結束標記為</DELETE>。
geometry_trisoup_data( ) { 描述符
     trisoup_sampling_value_minus1 ae(v)
     num_unique_segments_minus1 ae(v)
     for( i = 0; i <= num_unique_segments_minus1; i++ )  
         segment_indicator[ i ] ae(v)
<DELETE>     num_vertices_minus1</DELETE> <DELETE>     ae(v) </DELETE>
     for( i = 0; i <= num_vertices_minus1; i++ )  
         vertex_position[ i ] ae(v)
}  
在另一實例中,變數count_minus1的值可以用作為針對變數num_vertices_minus1的值的預測器。變數count_minus1亦可以用來決定差或增量,例如,num_vertices_delta(數量_頂點_增量)= num_vertices_minus1 - count_minus1。G-PCC編碼器200可以以訊號發送num_vertices_delta而不是以訊號發送變數num_vertices_minus1。num_vertices_delta可以是利用EG(k)來譯碼的(k可以是例如由G-PCC編碼器200預先決定的或以訊號發送的)或截短的一元二值化。下文示出對於草案G-PCC標準的修訂以反映這個實例。變更的開始標記為<CHANGE>以及變更的結束標記為</CHANGE>。
geometry_trisoup_data( ) { 描述符
     trisoup_sampling_value_minus1 ae(v)
     num_unique_segments_minus1 ae(v)
     for( i = 0; i <= num_unique_segments_minus1; i++ )  
         segment_indicator[ i ] ae(v)
<CHANGE> num_vertices_delta <CHANGE> ae(v) </CHANGE>
     num_vertices_minus1 = num_vertices_delta + count_minus1 </CHANGE>  
     for( i = 0; i <= num_vertices_minus1; i++ )  
         vertex_position[ i ] ae(v)
}  
現在論述num_unique_segments_minus1的訊號傳遞。在一些實例中,代替EG(0)二值化,EG(k)二值化可以用於對num_unique_segments_minus1的譯碼。例如,EG(k)是第k階指數哥倫布碼,以及EG(0)是第0階指數哥倫布碼。當log2_trisoup_node_size (= log2(trisoup_node_size))減少1時,唯一的邊緣的數量粗略地按比例放大4倍。相應地,k的值可以增加2以平衡4的比例因數。因此,k被定義為 k = p – (log2_ trisoup_node_size << 1)
p = 22的值可以在序列的多樣化集合上提供良好的效能。然而,可以使用p的不同的值,以及p的不同的值可以是在G-PCC編碼器200和G-PCC解碼器300處預先決定的、由G-PCC解碼器300推測出的或由G-PCC編碼器200以訊號發送的。注意的是,對k的決定不需要任何另外的訊號傳遞,因為其是從p和log2_ trisoup_node_size計算出的。假如p是預先決定的或推測出的,則對於k或p不需要訊號傳遞。
圖5是示出根據本案內容用於處理點雲的實例技術的流程圖。G-PCC解碼器300可以對包括頂點的雲點資料的立方體的邊緣的數量進行計數(500)。例如,G-PCC解碼器300可以對針對其的各自的語法元素的值指示各自的邊緣包括頂點的邊緣的數量進行計數。例如,G-PCC解碼器300可以對針對其的各自的segment_indicator[]的值等於1的邊緣的數量進行計數。例如,針對給定的邊緣,具有等於1的值的segment_indicator[]可以表明給定的邊緣包括頂點。
G-PCC解碼器300可以基於計數的總數來設置變數(502)。例如,G-PCC解碼器300可以設置要等於該計數減1的總數的變數,此類count_minus 1(計數_減1)。G-PCC解碼器300可以基於該變數來處理點雲資料(504)。例如,G-PCC解碼器300可以使用count_minus 1來處理點雲。
在一些實例中,G-PCC解碼器可以基於該變數和語法元素來決定差,以及基於該差來處理點雲。在一些實例中,語法元素的值表明立方體中的頂點的數量減1,以及該差等於語法元素的值減計數的總數減1。例如,語法元素可以是num_vertices_minus1以及該差可以等於num_vertices_minus1減計數的總數減1。在一些實例中,G-PCC編碼器200或G-PCC解碼器300可以利用指數哥倫布碼來對差進行解碼。在一些實例中,G-PCC解碼器300可以包括配置為基於點雲資料來呈現影像的顯示器。
經由G-PCC編碼器200未以訊號發送語法元素,諸如num_vertices_minus1,以及G-PCC解碼器決定原本經由語法元素傳送的資訊,可以減少用於在三湯模式中對點雲資料進行編碼的位元的數量,以及可以類似地減少發送的經編碼的點雲資料的頻寬。儘管本案內容的技術可能不影響草案G-PCC轉碼器設計中的幾何重構品質(以及亦有屬性重構品質),但是本案內容的技術可以減少用於對內容進行解碼的位元的數量。
本案內容的各個態樣中的實例可以單獨地使用或在任何組合中使用。
本案內容包括以下非限制性實例。
條款1A。一種對點雲資料進行解碼的方法,該方法包括:對包含頂點的邊緣或分段的數量進行計數;將變數設置為該計數的總數減1;及基於該變數來對該點雲資料進行解碼。
條款2A。根據條款1A所述的方法,其中該對包含頂點的邊緣或分段的數量進行計數包括:對針對其segment_indicator[]是1的邊緣或分段的數量進行計數。
條款3A。根據條款1A或條款2A所述的方法,其中該變數是count_minus 1。
條款4A。根據條款1A-3A的任何組合所述的方法,亦包括:基於該變數和語法元素來決定增量;及基於該增量來對該點雲資料進行譯碼。
條款5A。根據條款4A所述的方法,其中該語法元素是num_vertices_minus1,以及該增量等於num_vertices_minus1減計數的總數減1。
條款6A。根據條款5A所述的方法,亦包括:利用具有階k的指數哥倫布碼(EG(k))對該增量進行譯碼。
條款7A。根據條款6A所述的方法,其中k是在位元串流中以訊號發送的。
條款8 A。根據條款6A所述的方法,其中k是推測出的。
條款9A。根據條款6A所述的方法,其中k是預先決定的。
條款10A。根據條款4A-5A的任何組合所述的方法,亦包括:利用截短的一元二值化對該增量進行譯碼。
條款11A。根據條款4A-10A的任何組合所述的方法,其中該增量是在位元串流中以訊號發送的。
條款12A。一種對點雲資料進行譯碼的方法,該方法包括:決定語法元素;使用EG(k)來對該語法元素進行譯碼;及基於該語法元素來對該點雲資料進行譯碼,其中k是非零數。
條款13A。根據條款12A所述的方法,其中該語法元素是num_unique_segments_minus1以及k = p – (log2_trisoup_node_size << 1),其中p是數字。
條款14A。根據條款13A所述的方法,其中p是22。
條款15A。根據條款13A或14A所述的方法,其中p是預先決定的。
條款16A。根據條款13A-15A的任何組合所述的方法,其中p是在位元串流中以訊號發送的。
條款17A。根據條款15A的任何組合所述的方法,其中p是推測出的。
條款18A。根據條款1A-17A的任何組合所述的方法,亦包括:產生該點雲。
條款19A。根據條款1A-17A的任何組合所述的方法,其中譯碼包括解碼。
條款20A。根據條款1A-18A的任何組合所述的方法,其中譯碼包括編碼。
條款21A。一種用於處理點雲的設備,該設備包括用於執行條款1A-20A中的任何一項所述的方法的一或多個單元。
條款22A。根據條款21A所述的設備,其中該一或多個單元包括在電路中實現的一或多個處理器。
條款23A。根據條款21A或22A中的任何一項所述的設備,亦包括:用於儲存代表該點雲的資料的記憶體。
條款24A。根據條款21A-23A中的任何一項所述的設備,其中該設備包括解碼器。
條款25A。根據條款21A-24A中的任何一項所述的設備,其中該設備包括編碼器。
條款26A。根據條款21A-25A中的任何一項所述的設備,亦包括:用於產生該點雲的設備。
條款27A。根據條款21A-26A中的任何一項所述的設備,亦包括:用於基於該點雲來呈現影像的顯示器。
條款28A。一種電腦可讀的儲存媒體,其具有儲存在其上的指令,該等指令當被執行時使得一或多個處理器執行條款1A-20A中的任何一項所述的方法。
條款1B。一種處理點雲資料的方法,該方法包括:對包括頂點的該點雲資料的立方體的邊緣的數量進行計數;基於該計數的總數來設置變數;及基於該變數來處理該點雲資料。
條款2B。根據條款1B所述的方法,其中該變數包括該計數的總數減1。
條款3B。根據條款1B或條款2B所述的方法,其中對包括頂點的邊緣的數量進行計數包括對針對其的各自的語法元素的值指示各自的邊緣包括頂點的邊緣的數量進行計數。
條款4B。根據條款3B所述的方法,其中對針對其的各自的語法元素的值指示各自的邊緣包括頂點的邊緣的數量進行計數包括:對針對其的各自的segment_indicator[]的值等於1的邊緣的數量進行計數。
條款5B。根據條款1B-4B的任何組合所述的方法,其中該變數是count_minus 1。
條款6B。根據條款1B-5B的任何組合所述的方法,亦包括:基於該變數和語法元素來決定差;及基於該差來處理該點雲資料。
條款7B。根據條款6B所述的方法,其中該語法元素的值表明立方體中的頂點的數量減1,以及該差等於該語法元素的值減該計數的總數減1。
條款8B。根據條款6B或條款7B所述的方法,亦包括:利用指數哥倫布碼來對該差進行譯碼。
條款9B。一種用於處理點雲資料的設備,該設備包括:被配置為儲存該點雲資料的記憶體;及在電路中實現的以及耦合到該記憶體的一或多個處理器,該一或多個處理器被配置為:對包括頂點的點雲資料的立方體的邊緣的數量進行計數;基於該計數的總數來設置變數;及基於該變數來處理該點雲資料。
條款10B。根據條款9B所述的設備,其中該變數包括該計數的總數減1。
條款11B。根據條款9B或條款10B所述的設備,其中作為對邊緣的數量進行計數的一部分,該一或多個處理器被配置為對針對其的各自的語法元素的值指示各自的邊緣包括頂點的邊緣的數量進行計數。
條款12B。根據條款11B所述的設備,其中作為對邊緣的數量進行計數的一部分,該一或多個處理器被配置為對針對其的各自的segment_indicator[]的值等於1的邊緣的數量進行計數。
條款13B。根據條款9B-12B的任何組合所述的設備,其中該變數是count_minus 1。
條款14B。根據條款9B-13B的任何組合所述的設備,其中該一或多個處理器亦被配置為:基於該變數和語法元素來決定差;及基於該差來處理該點雲資料。
條款15B。根據條款14B所述的設備,其中該語法元素的值表明立方體中的頂點的數量減1,以及該差等於該語法元素的值減該計數的總數減1。
條款16B。根據條款14B或條款15B所述的設備,亦包括:利用指數哥倫布碼來對該差進行譯碼。
條款17B。根據條款9B-16B的任何組合所述的設備,亦包括:被配置為基於該點雲資料來呈現影像的顯示器。
條款18B。一種儲存指令的非暫時性電腦可讀取媒體,該等指令當被執行時使得一或多個處理器進行以下操作:對包括頂點的點雲資料的立方體的邊緣的數量進行計數;基於該計數的總數來設置變數;及基於該變數來處理點雲資料。
條款19B。根據條款18B所述的非暫時性電腦可讀取媒體,其中該變數包括該計數的總數減1。
條款20B。一種用於處理點雲資料的設備,該設備包括:用於對包括頂點的點雲資料的立方體的邊緣的數量進行計數的單元;用於基於該計數的總數來設置變數的單元;及用於基於該變數來處理該點雲資料的單元。
應當認識到的是,取決於實例,本文中描述的技術中的任何技術的某些行為或事件可以是在不同的序列中執行的,可以被增加、被合併或者被完全排除(例如,並不是所有描述的行為或事件都是針對該等技術的實踐而言所必需的)。此外,在某些實例中,行為或事件可以是併發地執行的,例如,經由多執行緒處理、中斷處理、或多個處理器,而不是循序地執行。
在一或多個實例中,所描述的功能可以是在硬體、軟體、韌體、或其任何組合中來實現的。若是在軟體中實現的,則該等功能可以作為一或多個指令或代碼儲存在電腦可讀取媒體上或在其上傳輸,以及由基於硬體的處理單元來執行。電腦可讀取媒體可以包括電腦可讀取儲存媒體或通訊媒體,該電腦可讀取儲存媒體對應於有形的媒體(諸如資料儲存媒體),該通訊媒體包括例如根據通訊協定促進電腦程式從一個地方轉移到另一個地方的傳送的任何媒體。以這種方式,電腦可讀取媒體通常可以對應於(1)有形的電腦可讀取儲存媒體,其是非暫時性的,或(2)諸如訊號或載波的通訊媒體。資料儲存媒體可以是可以由一或多個電腦或一或多個處理器存取以取回指令、代碼及/或資料結構的用於對本案內容中描述的技術的實現的任何媒體。電腦程式產品可以包括電腦可讀取媒體。
經由舉例而非限制的方式,此類電腦可讀取儲存媒體可以包括RAM、ROM、EEPROM、CD-ROM或其他光碟儲存、磁碟儲存或其他磁存放裝置、快閃記憶體、或可以用來以指令或資料結構的形式儲存期望的程式碼並且可以由電腦存取的任何其他媒體。此外,任何連接適當地稱為電腦可讀取媒體。例如,若指令是使用同軸電纜、光纖電纜、雙絞線、數位用戶線路(DSL)、或諸如紅外線、無線電和微波的無線技術來從網站、伺服器、或其他遠端源發送的,則該同軸電纜、光纖電纜、雙絞線、DSL、或諸如紅外線、無線電和微波的無線技術是包括在媒體的定義中的。但是,應當理解的是,電腦可讀取儲存媒體和資料儲存媒體不包括連接、載波、訊號或其他暫時性媒體,而是針對非暫時性的有形的儲存媒體。磁碟和光碟,如本文中使用的,包括壓縮光碟(CD)、鐳射光碟、光碟、數位多功能光碟(DVD)、軟碟和藍光光碟,其中磁碟通常磁性地複製資料,而光碟則利用鐳射來光學地複製資料。上述組合亦應當被包括在電腦可讀取媒體的範疇內。
指令可以由一或多個處理器來執行,諸如一或多個數位訊號處理器(DSP)、通用微處理器、特殊應用積體電路(ASIC)、現場可程式設計閘陣列(FPGA)或其他等效的集成的或個別的邏輯電路。相應地,如本文中使用的術語「處理器」和「處理電路」可以指的是上述結構中的任何結構或適用於對本文中描述的技術的實現的任何其他結構。此外,在一些態樣中,本文中描述的功能可以是在被配置用於編碼和解碼的專用硬體及/或軟體模組內提供的,或合併到組合的轉碼器中。此外,該等技術可以是在一或多個電路或邏輯部件中完全地實現的。
本案內容的技術可以是在各種各樣的設備或裝置中實現的,包括無線手持設備、積體電路(IC)或一組IC(例如,晶片集)。本案內容中描述的各種部件、模組或單元,以強調被配置為執行所揭示的技術的設備的功能的態樣,但是不一定要求由不同的硬體單元來實現。而是,如前述,各種單元可以是組合在轉碼器硬體單元中的,或是由包括如前述的一或多個處理器的一批交互動操作硬體單元結合適合的軟體及/或韌體來提供的。
已經描述了各種實例。這些實例和其他實例在所附申請專利範圍的範疇內。
100:編碼和解碼系統 102:源設備 104:資料來源 106:記憶體 108:輸出介面 110:電腦可讀取媒體 112:存放裝置 114:檔案伺服器 116:目的地設備 118:資料使用者 120:記憶體 122:輸入介面 200:G-PCC編碼器 202:座標變換單元 204:顏色變換單元 206:體素化單元 208:屬性傳送單元 210:八叉樹分析單元 212:表面近似分析單元 214:算術編碼單元 216:幾何重構單元 218:RAHT單元 220:LOD產生單元 222:提升單元 224:係數量化單元 226:算術編碼單元 300:G-PCC解碼器 302:幾何算術解碼單元 304:屬性算術解碼單元 306:八叉樹合成單元 308:逆量化單元 310:表面近似合成單元 312:幾何重構單元 314:RAHT單元 316:LOD產生單元 318:逆提升單元 320:逆變換座標單元 322:逆變換顏色單元 400:立方體 402:三角形 500:方塊 502:方塊 504:方塊
圖1是示出可以執行本案內容的技術的實例編碼和解碼系統的方塊圖。
圖2是示出實例基於幾何的點雲壓縮(G-PCC)編碼器的方塊圖。
圖3是示出實例G-PCC解碼器的方塊圖。
圖4是示出實例三湯表示的概念圖。
圖5是示出根據本案內容用於處理點雲的實例技術的流程圖。
國內寄存資訊(請依寄存機構、日期、號碼順序註記) 無 國外寄存資訊(請依寄存國家、機構、日期、號碼順序註記) 無
500:方塊
502:方塊
504:方塊

Claims (20)

  1. 一種處理點雲資料的方法,該方法包括以下步驟: 對包括一頂點的該點雲資料的一立方體的邊緣的一數量進行計數; 基於該計數的一總數來設置一變數;及 基於該變數來處理該點雲資料。
  2. 根據請求項1之方法,其中該變數包括該計數的該總數減1。
  3. 根據請求項1之方法,其中對包括一頂點的邊緣的該數量進行計數包括以下步驟:對針對其的一各自的語法元素的一值指示一各自的邊緣包括一頂點的邊緣的一數量進行計數。
  4. 根據請求項3之方法,其中對針對其的各自的語法元素的值指示各自的邊緣包括一頂點的邊緣的該數量進行計數包括以下步驟:對針對其的一各自的segment_indicator[]的一值等於1的邊緣的數量進行計數。
  5. 根據請求項1之方法,其中該變數是count_minus 1。
  6. 根據請求項1之方法,亦包括以下步驟: 基於該變數和一語法元素來決定一差;及 基於該差來處理該點雲資料。
  7. 根據請求項6之方法,其中該語法元素的一值表明該立方體中的頂點的一數量減1,以及該差等於該語法元素的值減該計數的該總數減1。
  8. 根據請求項6之方法,亦包括以下步驟:利用一指數哥倫布碼來對該差進行譯碼。
  9. 一種用於處理點雲資料的設備,該設備包括: 被配置為儲存該點雲資料的一記憶體;及 在電路中實現的以及耦合到該記憶體的一或多個處理器,該一或多個處理器被配置為: 對包括一頂點的該點雲資料的一立方體的邊緣的一數量進行計數; 基於該計數的一總數來設置一變數;及 基於該變數來處理該點雲資料。
  10. 根據請求項9之設備,其中該變數包括該計數的該總數減1。
  11. 根據請求項9之設備,其中作為對邊緣的該數量進行計數的一部分,該一或多個處理器被配置為對針對其的一各自的語法元素的一值指示一各自的邊緣包括一頂點的邊緣的一數量進行計數。
  12. 根據請求項11之設備,其中作為對邊緣的該數量進行計數的一部分,該一或多個處理器被配置為對針對其的一各自的segment_indicator[]的一值等於1的邊緣的一數量進行計數。
  13. 根據請求項9之設備,其中該變數是count_minus 1。
  14. 根據請求項9之設備,其中該一或多個處理器亦被配置為: 基於該變數和一語法元素來決定一差;及 基於該差來處理該點雲資料。
  15. 根據請求項14之設備,其中該語法元素的一值表明該立方體中的頂點的一數量減1,以及該差等於該語法元素的值減該計數的該總數減1。
  16. 根據請求項14之設備,亦包括:利用一指數哥倫布碼來對該差進行譯碼。
  17. 根據請求項9之設備,亦包括: 被配置為基於該點雲資料來呈現影像的一顯示器。
  18. 一種儲存指令的非暫時性電腦可讀取媒體,該等指令當被執行時使得一或多個處理器進行以下操作: 對包括一頂點的點雲資料的一立方體的邊緣的一數量進行計數; 基於該計數的一總數來設置一變數;及 基於該變數來處理點雲資料。
  19. 根據請求項18之非暫時性電腦可讀取媒體,其中該變數包括該計數的該總數減1。
  20. 一種用於處理點雲資料的設備,該設備包括: 用於對包括一頂點的該點雲資料的一立方體的邊緣的一數量進行計數的單元; 用於基於該計數的一總數來設置一變數的單元;及 用於基於該變數來處理該點雲資料的單元。
TW110112694A 2020-04-08 2021-04-08 針對基於幾何的點雲壓縮的三湯語法訊號傳遞 TW202143709A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US202063007274P 2020-04-08 2020-04-08
US63/007,274 2020-04-08
US17/224,674 2021-04-07
US17/224,674 US11657543B2 (en) 2020-04-08 2021-04-07 Trisoup syntax signaling for geometry-based point cloud compression

Publications (1)

Publication Number Publication Date
TW202143709A true TW202143709A (zh) 2021-11-16

Family

ID=78006544

Family Applications (1)

Application Number Title Priority Date Filing Date
TW110112694A TW202143709A (zh) 2020-04-08 2021-04-08 針對基於幾何的點雲壓縮的三湯語法訊號傳遞

Country Status (7)

Country Link
US (1) US11657543B2 (zh)
EP (1) EP4133728A1 (zh)
KR (1) KR20220164700A (zh)
CN (1) CN115299055A (zh)
BR (1) BR112022019559A2 (zh)
TW (1) TW202143709A (zh)
WO (1) WO2021207510A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023184393A1 (en) * 2022-03-31 2023-10-05 Beijing Xiaomi Mobile Software Co., Ltd. Method for encoding and decoding a 3d point cloud, encoder, decoder
EP4258214A1 (en) * 2022-04-07 2023-10-11 Beijing Xiaomi Mobile Software Co., Ltd. Methods and apparatus for coding a vertex position for a point cloud, and data stream including the vertex position
EP4365843A1 (en) * 2022-11-04 2024-05-08 Beijing Xiaomi Mobile Software Co., Ltd. Encoding/decoding point cloud geometry data

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2558314B (en) * 2017-01-02 2020-07-29 Canon Kk Improved attribute mapping to encode and decode 3D models
CN113615207A (zh) * 2019-03-21 2021-11-05 Lg电子株式会社 点云数据发送装置、点云数据发送方法、点云数据接收装置和点云数据接收方法
WO2021025251A1 (ko) * 2019-08-08 2021-02-11 엘지전자 주식회사 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법

Also Published As

Publication number Publication date
BR112022019559A2 (pt) 2022-11-16
EP4133728A1 (en) 2023-02-15
US20210319595A1 (en) 2021-10-14
US11657543B2 (en) 2023-05-23
KR20220164700A (ko) 2022-12-13
WO2021207510A1 (en) 2021-10-14
CN115299055A (zh) 2022-11-04

Similar Documents

Publication Publication Date Title
US11935270B2 (en) Predictive geometry coding in G-PCC
US11803989B2 (en) Quantization for geometry-based point cloud compression
TW202143709A (zh) 針對基於幾何的點雲壓縮的三湯語法訊號傳遞
TW202131683A (zh) 用於基於幾何的點雲壓縮的高階語法
TW202141984A (zh) 用於在基於幾何形狀的點雲壓縮中的預測變換的預測器索引訊號傳遞
KR20230027048A (ko) 지오메트리-기반 포인트 클라우드 압축을 위한 속성 파라미터 코딩
JP2023520855A (ja) ジオメトリベースのポイントクラウド圧縮における角度モードおよび方位角モードについてのレーザー角度のコーディング
EP4162693A1 (en) Attribute residual coding in g-pcc
US11770562B2 (en) High-level syntax for geometry-based point cloud compression
US20220114763A1 (en) High level syntax refinements for geometry point cloud compression (g-pcc)
EP4226625A1 (en) Temporal scalability in geometry point cloud compression (g-pcc)
CN113632142B (zh) 点云编解码的方法和装置
TW202348035A (zh) 在基於幾何形狀的點雲壓縮中使用訊框間預測利用基於動態的具有即時更新的最優二進位譯碼器(obuf)的八叉樹佔用譯碼進行佔用譯碼
TW202333113A (zh) G-pcc中的平面和直接模式訊號傳遞
CN115733990A (zh) 点云编解码方法、设备及存储介质
CN113632142A (zh) 点云压缩的方法和装置