




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
中關(guān)村視聽產(chǎn)業(yè)技術(shù)創(chuàng)新聯(lián)盟發(fā)布I前言 2規(guī)范性引用文件 3術(shù)語(yǔ)和定義 4縮略語(yǔ) 4 45.1概述 45.2算術(shù)運(yùn)算符 45.3邏輯運(yùn)算符 5.4關(guān)系運(yùn)算符 5.5位運(yùn)算符 5.6賦值 5.7數(shù)學(xué)函數(shù) 5.8結(jié)構(gòu)關(guān)系符 5.9位流語(yǔ)法、解析過程和解碼過程的描述方法 6編碼位流的結(jié)構(gòu) 6.1點(diǎn)云序列 6.2點(diǎn)云片 7位流的語(yǔ)法和語(yǔ)義 7.1語(yǔ)法描述 7.2語(yǔ)義描述 8解析過程 468.1k階指數(shù)哥倫布碼 468.2ue(v)和se(v)的解析過程 478.3ae(v)的解析過程 489解碼過程 609.1解碼過程概述 609.2幾何信息解碼過程 609.3屬性信息解碼過程 9.4生成重建點(diǎn)云 96附錄A(規(guī)范性)偽起始碼方法 98附錄B(規(guī)范性)檔次和規(guī)范 99B.1概述 99B.2檔次 99B.3級(jí)別 B.4語(yǔ)義取值范圍 本文件為T/AI128《信息技術(shù)時(shí)空?qǐng)D形數(shù)據(jù)編碼》的第2部分。T/AI128已發(fā)創(chuàng)新科技有限公司、西安電子科技大學(xué)、OPPO廣東移動(dòng)通信有限公司、中山大學(xué)、浙江大學(xué)、北京大創(chuàng)新科技股份有限公司、中國(guó)移動(dòng)通信集團(tuán)則對(duì)點(diǎn)云數(shù)據(jù)的壓縮提出了挑戰(zhàn),并且由于點(diǎn)云壓縮標(biāo)準(zhǔn)的缺失導(dǎo)致各類點(diǎn)云設(shè)備無(wú)法實(shí)現(xiàn)有效的互本文件的發(fā)布機(jī)構(gòu)提請(qǐng)注意,聲明符合本文件時(shí),可能涉及到:9.3.6與《一種基于鄰居權(quán)重的參數(shù)選取和傳遞的點(diǎn)云屬性編碼和解碼的方法及設(shè)備》(專利申請(qǐng)?zhí)枺篊N201910942969.39.3.2與《對(duì)三維數(shù)據(jù)點(diǎn)集進(jìn)行編碼或解碼的方法和裝置》(專利申請(qǐng)?zhí)枺篊N201980005064.19.2.2、9.2.3與《用于三維數(shù)據(jù)點(diǎn)集處理的方法和設(shè)備》(專利申請(qǐng)?zhí)枺篊N201980005156.X9.2.2與《三維數(shù)據(jù)點(diǎn)的編解碼方法和裝置》(專利申請(qǐng)?zhí)枺篊N201980005594.69.2.2與《一種點(diǎn)云編碼方法、點(diǎn)云解碼方法及相關(guān)設(shè)備》(專利申請(qǐng)?zhí)枺篊N201980007958.49.2.2、9.2.3與《一種用于點(diǎn)云處理、解碼的方法、設(shè)備及存儲(chǔ)介質(zhì)》(專利申請(qǐng)?zhí)枺篊N201980012174.09.2.2、9.2.3與《三維數(shù)據(jù)點(diǎn)的編解碼方法和裝置》(專利申請(qǐng)?zhí)枺篊N201980012178.98.3.3與《點(diǎn)云屬性編碼方法和裝置及點(diǎn)云屬性解碼方法和裝置》(專利申請(qǐng)?zhí)枺篊N201980039255.X9.2.3與《一種用于點(diǎn)云處理、解碼的方法、設(shè)備及存儲(chǔ)介質(zhì)》(專利申請(qǐng)?zhí)枺篊N201980094938.5、、、、0與《一種數(shù)據(jù)編碼、數(shù)據(jù)解碼的方法、設(shè)備及存儲(chǔ)介質(zhì)》(專利申請(qǐng)?zhí)枺篊N201980094966.79.2.3與《一種點(diǎn)云幾何編碼方法、解碼方法、編碼設(shè)備及解碼設(shè)備》(專利申請(qǐng)?zhí)枺篊N202010238176.69.3.13與《一種點(diǎn)云屬性編碼方法、解碼方法、編碼設(shè)備及解碼設(shè)備》(專利申請(qǐng)?zhí)枺篊N202010967090.79.2.3與《一種用于點(diǎn)云編碼、解碼的方法和設(shè)備》(專利申請(qǐng)?zhí)枺篊N202080004086.9);9.2.3與《點(diǎn)云的編解碼方法和裝置》(專利申請(qǐng)?zhí)枺篊N202080004105.89.2.3與《點(diǎn)云的編解碼方法和裝置》(專利申請(qǐng)?zhí)枺篊N202080005108.39.3.3與《點(diǎn)云編碼和解碼方法、裝置及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)》(專利申請(qǐng)?zhí)枺篊N202080081330.19.3.3與《點(diǎn)云編碼方法、點(diǎn)云解碼方法、裝置及存儲(chǔ)介質(zhì)》(專利申請(qǐng)?zhí)枺篊N202080081334.X9.3.10與《一種點(diǎn)云的屬性熵編碼和熵解碼的方法及設(shè)備》(專利申請(qǐng)?zhí)枺篊N202110269745.89.3.5、、7.2.3、7.2.6與《點(diǎn)云編碼處理方法、解碼處理方法及裝置》(專利申請(qǐng)?zhí)枺篊N202110656048.8);7.2.3、7.2.6與《熵編碼、解碼方法及裝置》(專利申請(qǐng)?zhí)枺篊N202110656066.69.3.14與《點(diǎn)云屬性編碼方法、裝置、解碼方法、裝置及相關(guān)設(shè)備》(專利申請(qǐng)?zhí)枺篊N202110656783.99.2.3與《一種點(diǎn)云孤立點(diǎn)編碼方法、解碼方法及裝置》(專利申請(qǐng)?zhí)枺篊N202110657395.29.3.9與《一種點(diǎn)云屬性預(yù)測(cè)方法、裝置、終端及存儲(chǔ)介質(zhì)》(專利申請(qǐng)?zhí)枺篊N202110657405.2);7.2.8、9.2.6與《點(diǎn)云編碼方法、解碼方法及裝置》(專利申請(qǐng)?zhí)枺篊N202110941633.29.3.13與《點(diǎn)云屬性編碼方法、裝置、解碼方法以及裝置》(專利申請(qǐng)?zhí)枺篊N202110969710.59.2.6與《點(diǎn)云編碼方法、解碼方法、點(diǎn)云編碼設(shè)備及解碼設(shè)備》(專利申請(qǐng)?zhí)枺篊N202110975997.29.3.7、9.3.13與《點(diǎn)云預(yù)測(cè)、點(diǎn)云編碼、點(diǎn)云解碼方法及設(shè)備》(專利申請(qǐng)?zhí)枺篊N202110976025.57.2.7、9.3.11與《屬性量化、反量化方法、裝置及設(shè)備》(專利申請(qǐng)?zhí)枺篊N202111465429.49.3.5、9.3.6、9.3.9、9.3.10與《點(diǎn)云屬性編碼方法、點(diǎn)云屬性解碼方法及終端》(專利申請(qǐng)?zhí)枺篊N202111465642.59.3.5、9.3.6與《一種點(diǎn)云屬性編碼方法、解碼方法、編碼設(shè)備及解碼設(shè)備》(專利申請(qǐng)?zhí)枺篊N202111482269.49.2.3與《點(diǎn)云幾何解碼方法、裝置、計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)》(專利申請(qǐng)?zhí)枺篊N202180081867.2與《點(diǎn)云屬性解碼方法和點(diǎn)云屬性編碼方法》(專利申請(qǐng)?zhí)枺篊N202180083707.19.3.14與《一種點(diǎn)云屬性編碼方法、點(diǎn)云屬性解碼方法及存儲(chǔ)介質(zhì)》(專利申請(qǐng)?zhí)枺篊N202210699502.29.2.6與《基于預(yù)測(cè)樹的點(diǎn)云幾何編碼、解碼方法及設(shè)備》(專利申請(qǐng)?zhí)枺篊N202211596014.59.2.3與《點(diǎn)云幾何與《點(diǎn)云屬性編碼解碼方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)》(專利申與《對(duì)三維數(shù)據(jù)點(diǎn)集進(jìn)行編碼或解碼的方法和裝置》(專利申請(qǐng)?zhí)枺篜CT/CN2019/0712389.2.2、9.2.3與《用于三維數(shù)據(jù)點(diǎn)集處理的方法和設(shè)備》(專利申請(qǐng)?zhí)枺篜CT/CN2019/0712409.2.2與《三維數(shù)據(jù)點(diǎn)的編解碼方法和裝置》(專利申請(qǐng)?zhí)枺篜CT/CN2019/0714948.3.3與《點(diǎn)云屬性編碼方法和裝置及點(diǎn)云屬性解碼方法和裝置》(專利申請(qǐng)?zhí)枺篜CT/CN2019/0791509.2.2與《一種點(diǎn)云編碼方法、點(diǎn)云解碼方法及相關(guān)設(shè)備》(專利申請(qǐng)?zhí)枺篜CT/CN2019/0910979.2.2、9.2.3與《三、0與《一種數(shù)據(jù)編碼、數(shù)據(jù)解碼的方法、設(shè)備及存儲(chǔ)介質(zhì)》(專利申請(qǐng)?zhí)枺篜CT/CN2019/1222099.2.3與《一種用于點(diǎn)云處理、解碼的方法、設(shè)備及存儲(chǔ)介質(zhì)》(專利申請(qǐng)?zhí)枺篜CT/CN2019/1238219.2.2、9.2.3與《一種用于點(diǎn)云處理、解碼的方法、設(shè)備及存儲(chǔ)介質(zhì)》(專利申請(qǐng)?zhí)枺篜CT/CN2019/1260909.2.3與《一種用于點(diǎn)云編碼、解碼的方法和設(shè)備》(專利申請(qǐng)?zhí)枺篜CT/CN2020/0825939.2.3與《點(diǎn)云的編解碼方法和裝置》(專利申請(qǐng)?zhí)枺篜CT/CN2020/0826089.2.3與《點(diǎn)云的編解碼方法和裝置》(專利申請(qǐng)?zhí)枺篜CT/CN2020/0937549.3.3與《點(diǎn)云編碼方法、點(diǎn)云解碼方法、裝置及存儲(chǔ)介質(zhì)》(專利申請(qǐng)?zhí)枺篜CT/CN2020/1312469.3.3與《點(diǎn)云編碼和解碼方法、裝置及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)》(專利申請(qǐng)?zhí)枺篜CT/CN2020/1343559.2.3與《點(diǎn)云幾何解碼方法、裝置、計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)》(專利申請(qǐng)?zhí)枺篜CT/CN2021/073422與《點(diǎn)云屬性解碼方法和點(diǎn)云屬性編碼方法》(專利申請(qǐng)?zhí)枺篜CT/CN2021/9.3.6、9.3.9、9.3.10、9.3.11、9.3.12與《解碼方法、編碼方法、解碼器以及編碼器》(專利申請(qǐng)?zhí)枺篜CT/CN2021/135529);7.1.4、7.2.9、8.1、8.3.4、9.3.10與《解碼方法、編碼方法、解碼器以及編碼器》(專利申請(qǐng)?zhí)枺篜CT/CN2022/0996359.2.3與《點(diǎn)云編碼解碼方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)》(專利申請(qǐng)?zhí)枺篜CT/CN2022/1221179.3.10與《點(diǎn)云編解碼方法、編碼器、解碼器、碼流及存儲(chǔ)介質(zhì)》(專利申請(qǐng)?zhí)枺篜CT/CN2022/132330);8.3.3與《編解碼方法、解碼器、編碼器、碼流及存儲(chǔ)介質(zhì)》(專利申請(qǐng)?zhí)枺篜CT/CN2022/1381859.3.10與《點(diǎn)云編解碼方法、編碼器、解碼器、碼流及存儲(chǔ)介質(zhì)》(專利申請(qǐng)?zhí)枺篜CT/CN2023/071279、7.2.4與《解碼方法、編碼方法、解碼器以及編碼器》(專利申請(qǐng)?zhí)枺篜CT/CN2023/077410、7.2.6與與7.2.9、8.3.3與《點(diǎn)云的編解碼方法、碼流、編碼器、解碼器以及存儲(chǔ)介質(zhì)》(專利申請(qǐng)?zhí)枺篜CT/CN2023/0863347.1.4、7.2.9、8.3.3與《點(diǎn)云的編解碼方法、碼流、編碼器、解碼器以及存儲(chǔ)介質(zhì)》(專利申請(qǐng)?zhí)枺篜CT/CN2023/086337與《編解碼方法、碼流、編碼器、解碼器以及存儲(chǔ)介質(zhì)》(專利申請(qǐng)?zhí)枺篜CT/CN2023/1137927.2.4與《編解碼方法、編解碼器以及存儲(chǔ)介質(zhì)》(專利申請(qǐng)?zhí)枺篜CT/CN2023/1138319.2.5與《點(diǎn)云編解碼方法、碼流、編碼器、解碼器以及存儲(chǔ)介質(zhì)》(專利申請(qǐng)?zhí)枺篜CT/CN2023/1138359.3.8與《編解碼方法、編解碼器以及存儲(chǔ)介質(zhì)》V(專利申請(qǐng)?zhí)枺篜CT/CN2023/1138399.3.5、9.3.6與《編解碼方法、編解碼器以及存儲(chǔ)介質(zhì)》(專利申請(qǐng)?zhí)枺篜CT/CN2023/113845、7.1.4、7.2.4與解碼器以及存儲(chǔ)介質(zhì)》(專利申請(qǐng)?zhí)枺篜CT/CN2023/11本文件的發(fā)布機(jī)構(gòu)對(duì)于該專利的真實(shí)性、有效性和范圍無(wú)任聯(lián)系人:黃鐵軍(數(shù)字音視頻編解碼技術(shù)標(biāo)準(zhǔn)工作組1信息技術(shù)時(shí)空?qǐng)D形數(shù)據(jù)編碼第2部分:點(diǎn)云本文件規(guī)定了點(diǎn)云編碼位流的結(jié)構(gòu)、位流的語(yǔ)法和語(yǔ)義、解析過程及解IEEEStd754TM-2019IEEEStanISO/IEC9899:2018Informa定義了一些特定語(yǔ)法元素值,這些值用于將來(lái)笛卡爾坐標(biāo)Cartesiancoord點(diǎn)云的基本元素,其位置表示為三維空間笛卡爾坐標(biāo)(x,y,z),并2一組無(wú)序的點(diǎn)的集合,表達(dá)三維物體或場(chǎng)景的空間結(jié)構(gòu)有限位二元符號(hào)組成的有序序列,最左邊符號(hào)是最高有效位,最右邊符號(hào)是最低有效樹中當(dāng)前節(jié)點(diǎn)靠近根節(jié)點(diǎn)方向的上一層節(jié)點(diǎn)。一個(gè)父節(jié)點(diǎn)包含多個(gè)定義了一些特定語(yǔ)法元素值。禁止某些值的目的通常是為了避免在位流中出3一系列的語(yǔ)法元素,用于表示一部分或者整個(gè)點(diǎn)云。有限個(gè)二進(jìn)制位的有序序列,其最左邊位是最計(jì)算由語(yǔ)法元素解碼得到的樣本殘差與其對(duì)應(yīng)的預(yù)測(cè)值之和的在樣值或數(shù)據(jù)元素的解碼過程中,經(jīng)過預(yù)測(cè)得到的估計(jì)用于表示一個(gè)節(jié)點(diǎn)的子節(jié)點(diǎn)占用情況的一個(gè)字節(jié),其中每個(gè)位的值對(duì)應(yīng)該節(jié)點(diǎn)的一個(gè)子節(jié)點(diǎn)的占44縮略語(yǔ)APS屬性參數(shù)集(attributeparameterset)ASH屬性片頭(attributesliceGPS幾何參數(shù)集(geometryparameterset)LSB最低有效位(leastsignificantbit)MSB最高有效位(mostsignificantbQP量化參數(shù)(quantizationparameter)QTBT四叉樹和二叉樹(quadtreeandbinarytrrefl反射率(reflectancSPS序列參數(shù)集(5.1概述對(duì)整型除法和算術(shù)移位操作進(jìn)行了特定定義。除5.2算術(shù)運(yùn)算符5+-*/abaf(i)5.3邏輯運(yùn)算符!><65.5位運(yùn)算符&|5.6賦值=遞增,x++相當(dāng)于x=x+1。當(dāng)用于數(shù)組下標(biāo)時(shí),在遞增運(yùn)算前先求變量值遞減,x--相當(dāng)于x=x-1。當(dāng)用于數(shù)組下標(biāo)時(shí),在遞減運(yùn)算前先求變量值按位或賦值運(yùn)算符,對(duì)左側(cè)變量和右側(cè)表達(dá)式執(zhí)行按位或5.7數(shù)學(xué)函數(shù)5.7.1通用函數(shù)x——自變量x;x——自變量x;7x——自變量x;Round(x)=?x+0.5?...........................5.7.2三維笛卡爾坐標(biāo)到莫頓碼的轉(zhuǎn)換輸入:三維笛卡爾坐標(biāo)(X,Y,Z),其中X、Y和Z表示成n-bit的二進(jìn)制數(shù)如下:M=xn-1yn-1zn-1xn-2yn-2zn-2…x1y1z1x0y0z0XYZMM015.7.3三維笛卡爾坐標(biāo)到三維希爾伯特碼的轉(zhuǎn)換8hilbertCode=0hilbertCode<<=6hilbertCode+=HilbertTable[state][postate=HilbertTable[sthilbertCode<<=6hilbertCode+=HilbertTable[state][postate=HilbertTable[sthilbertCode<<=6hilbertCode+=HilbertTable[state][postate=HilbertTable[sthilbertCode<<=6hilbertCode+=HilbertTable[state][postate=HilbertTable[sthilbertCode<<=6hilbertCode+=HilbertTable[state][postate=HilbertTable[sthilbertCode<<=6hilbertCode+=HilbertTable[state][postate=HilbertTable[sthilbertCode<<=6hilbertCode+=HilbertTable[state][postate=HilbertTable[sthilbertCode<<=6hilbertCode+=HilbertTable[state][postate=HilbertTable[sthilbertCode<<=69hilbertCode+=HilbertTable[state][postate=HilbertTable[sthilbertCode<<=6hilbertCode+=HilbertTable[state][poHilbertTable[12][64][25.8結(jié)構(gòu)關(guān)系符5.9位流語(yǔ)法、解析過程和解碼過程的描述方法位串的長(zhǎng)度是4的整數(shù)倍時(shí),可使用十六進(jìn)制符號(hào)表示。十六進(jìn)制的前綴是‘0x’,例如‘0x1a’語(yǔ)法表描述了所有符合本文件的位流語(yǔ)法的超集,附加的語(yǔ)法限制在相關(guān)條中說(shuō)明。表8給出了描述語(yǔ)法的偽代碼例子。當(dāng)語(yǔ)法元/*花括號(hào)括起來(lái)的語(yǔ)句組是復(fù)合語(yǔ)句,在功能上視作單個(gè)語(yǔ)句{…}概述byte_aligned()next_bits(n)返回位流的隨后n個(gè)二進(jìn)制位,MSB在前,不改變位流指針。如果剩余的二進(jìn)制位少于n,則返回byte_aligned_next_bitsnext_start_code()在位流中尋找下一個(gè)起始碼,將位流指針指向起始碼前綴的第一個(gè)二進(jìn)10}在位流中檢測(cè)當(dāng)前字節(jié)中剩下的位或在字節(jié)對(duì)齊時(shí),判斷下一個(gè)字節(jié)是否是片結(jié)尾填充的二進(jìn)制}返回位流的隨后n個(gè)二進(jìn)制位,MSB在前,同時(shí)位流指針前5.9.3描述符高級(jí)熵編碼的語(yǔ)法元素。解析過程在8.3中定義。取特定值的連續(xù)n個(gè)二進(jìn)制位。解析過程由函數(shù)read_bits(n)的返回值規(guī)定。有符號(hào)整數(shù)語(yǔ)法元素,用指數(shù)哥倫布碼編碼。解析過程在8.2中定義。無(wú)符號(hào)整數(shù)語(yǔ)法元素,用指數(shù)哥倫布碼編碼。解析過程在8.2中定義。5.9.4保留、禁止和標(biāo)記位“禁止”定義了一些特定語(yǔ)法元素值。這些值不應(yīng)出現(xiàn)在符合本文件的位流中的“保留位”(reserved_bits)表明保留了一些語(yǔ)法單元用于將來(lái)對(duì)本文件的擴(kuò)展,解碼著一個(gè)或多個(gè)點(diǎn)云幀。每個(gè)點(diǎn)云幀應(yīng)包含幀頭和一個(gè)或多個(gè)點(diǎn)云片起始碼由起始碼前綴和起始碼值構(gòu)成。起始碼前綴是位串‘00000屬性序列起始碼(attribute_sta用戶數(shù)據(jù)起始碼(user_data_sta點(diǎn)云幾何片頭起始碼(geometry_slice_h點(diǎn)云屬性片頭起始碼(attribute_slice_幾何數(shù)據(jù)起始碼(geometry_slice_payloa顏色數(shù)據(jù)起始碼(color_slice_payload_star反射率數(shù)據(jù)起始碼(refl_slice_payload_s其中,attribute_slice_header_start_code=07表if(attribute_present_flag){}if(next_bits(32)==user_data_start_code)userdata_bitstream()if(next_bits(32)==user_data_start_code)userdata_bitstream()geometry_slice()if(attribute_present_flag){}while(next_bits(32)==attribute_slice_h}}while(next_bits(32)==geometry_slice_hea}while(next_bits(32)==f}geometry_slice_header(general_geometry_data_bitstre}attribute_slice_header(general_attribute_data_bitstrea}u(4)u(8)u(4)u(1)u(1)if(attribute_present_flag){u(7)u(1)}byte_alignment()}byte_alignment(){while(!byte_aligned())}geometry_quant_step_siu(21)geometry_quant_step_u(5)geom_max_tree_size_logue(v)implicit_geom_partitionu(1)u(1)occupancy_search_range_ue(v)u(1)if(!save_state_flag){u(1)}byte_alignment()}for(attrIdx=0;attrIdx<attribute_data_present_flu(1)if(attribute_data_present_flag[attrIdx]){attribute_data_num_set_minuue(v)if((attrIdx==1)&&(attribute_data_numue(v)}}if(multi_attributes_set_flag)u(1)if(multi_data_set_flag[attrIdx])attribute_info_num_set_miue(v)for(i=0;i<(attribuoutput_bit_depth_minus1[ue(v)ue(v)u(1)ue(v)ue(v)ue(v)}ue(v)ue(v)ue(v)pred_fixed_point_frac_bue(v)}u(2)if((transform[attrIdx][i]==0)||(transform[attrImax_num_of_neighbours_log2_minusu(2)if(attrIdx==0){u(1)}ue(v)ue(v)pred_dist_weight_group_size_ue(v)}}transform_segment_size_upper[attu(16)transform_segment_size_lower[attrIu(16)ue(v)attr_transform_qp_delta[ue(v)trans_res_layer[attrIu(1)}if(transform[attrIdx][i]==2){max_num_of_coeff_log2_minus8[atue(v)if(attrIdx==0){ue(v)u(1)}ue(v)u(1)}}coeff_length_control_log2_minus8[atue(v)}}}if((attribute_data_num_set_minus1[0]==0)&&(attributu(1)if(cross_attr_type_pred){u(1)u(15)u(21)}}byte_alignment()}ue(v)ue(v)lcu_node_size_log2_miue(v)u(16)u(16)bounding_box_offset_x_uu(16)bounding_box_offset_x_lu(16)bounding_box_offset_y_uu(16)bounding_box_offset_y_lu(16)bounding_box_offset_z_upu(16)bounding_box_offset_z_lu(16)bounding_box_size_widtu(16)bounding_box_size_width_lou(16)bounding_box_size_heighu(16)bounding_box_size_heighu(16)bounding_box_size_deptu(16)bounding_box_size_depth_lou(16)byte_alignment()}geometry_slice_headgeometry_slice_header_sue(v)u(1)if(implicit_geom_partition_flag){max_num_implicit_qtbt_beue(v)ue(v)}if(single_mode_flag){u(1)}u(1)slice_bounding_box_offseu(16)slice_bounding_box_offsu(16)slice_bounding_box_offseu(16)slice_bounding_box_offsu(16)slice_bounding_box_offseu(16)slice_bounding_box_offseu(16)slice_bounding_box_su(6)slice_bounding_box_su(6)slice_bounding_box_su(6)u(16)u(16)byte_alignment()}attribute_slice_headattribute_slice_headerue(v)ue(v)color_init_pred_traif(color_qp_adjust_flag){ue(v)}byte_alignment()}general_geometry_data_bitsgeometry_slice_payload_stabyte_alignment()}for(depth=0;depth<MaxGeometryOctreeDepth;if(gsh_single_mode_fsingle_point_eligible_flag_per_deptfor(nodeIdx=0;nodeIdx<NumNodesAtDepth[depthif(lcu_node_size_log2>max(NodeSizeXLog2,NodeSizeYLog2,NodeSizeZLog2)){if(geom_tree_type==0){lcu_predtree_data()}xN=NodeX[depth][nodeyN=NodeY[depth][nodeIdzN=NodeZ[depth][nodeIgeometry_node(depthX,depthY,depthZ,single_point_eligible_flag_per_dept}if(!(partitionSkip&4))if(!(partitionSkip&2))}lcuDepthX=lcuDepthY=lcuDepfor(lcuDepth=0;lcuDepth<lcuMaxGeometryOctreeDepth;if(gsh_single_mode_flasingle_point_eligible_flag_per_deptfor(nodeIdx=0;nodeIdx<lcuNumNodesAtDepth[lcuDepth];noxN=lcuNodeX[lcuDepth][nodeyN=lcuNodeY[lcuDepth][nodeIdzN=lcuNodeZ[lcuDepth][nodeIgeometry_node(lcuDepthX,lcuDepthY,lcuDepthZ,lyN,zN,single_point_eligiblif(!(lcuPartitionSkip&4))lcuDepthX=lcuDeptif(!(lcuPartitionSkip&2))lcuDepthY=lcuDeptlcuDepthZ=lcuDept}}num_bits_in_lcu_numfor(i=0;i<num_bits_in_lcu_num_poi}is_geom_residual_zero[nif(!is_geom_residual_zero[n][k]){num_bits_geom_residual_minus1[for(j=0;j<num_bits_geom_residual_minus1[n][k]-1;j++){geom_residual_minus1_div}geom_residual_minus1_div2_remain}if(geom_residual_max_rel_sign[n]>=4){geom_residual_ord_rel_s}if((geom_residual_ord_rel_sign[n][0]>>2)+2<=geom_residual_max_rel_sign[n]){geom_residual_ord_rel_s}if((geom_residual_ord_rel_sign[n][0]>>2)+(geom_residual_ordgeom_residual_ord_rel_s}}geometry_node(depth,depthX,depthY,depthZ,pasingle_point_eligible_flag_per_depthif(single_point_eligible_flag_per_depth[depth]&&(!GeomSingleNodeif(GeometryNodeOccupancyCnt[depth][xN][yNgeom_single_flag=0}if(geom_single_flag){}for(i=ChildNodeSize}for(i=ChildNodeSiz}}if(!geom_single_flag){if(depthX>=MaxNodeSizeXLog2?1if(!geomRemoveDuplicateFlag){for(child=0;child<GeometryNodeChilif(!num_duplicated_points_eq1)num_duplicated_points}}}}}}general_attribute_data_bitstif(next_start_code()==color_slice_payload_start_code)general_color_data_bitstreaif(next_start_code()==refl_slice_payload_start_code)general_refl_data_bitstrea}general_color_data_bitstcolor_slice_payload_starattribute_data_color()byte_alignment()}general_refl_data_bitstrefl_slice_payload_starif(attribute_data_num_set_minattribute_data_multiple_refl()attribute_data_refl()}byte_alignment()}residual_zero_run_length=zero_run_length_code()if(residual_zero_run_length=maxLatency){}if(residual_zero_run_length){residual_zero_run_length--if(isLengthControl){residual_zero_run_length=zero_run_length_code()color_residual_correlation_coderesidual_zero_run_length=zero_run_length_code()}}}}residual_zero_run_length=zero_run_length_code()if(residual_zero_run_length=maxLatency){}if(residual_zero_run_length){if(isLengthControl){residual_zero_run_length=zero_run_length_code()if(!isDuplicatePoint){}if(!refl_minus1_div2_eq0){if(!reflabs_level_minus1_div2_eq1){reflabs_level_minus1_div2abs_reflectance=3+refl_minu}}residual_zero_run_length=zero_run_length_code()}}}}zero_run_length_code(zero_run_length_eq0if(!zero_run_length_eq0){zero_run_length_minu}}color_residual_correlationif(!color_first_comp_zero){color_component[0]=color_component_code(truecolor_component[1]=colocolor_component[2]=color_component_code(false,if(!(isDuplicatePoint&&order_switch==0))color_component[0]=0if(!color_second_comp_zero){color_component[1]=colorcolor_component[2]=color_component_code(false,if(!(isDuplicatePoint&&ordecolor_component[1]=0color_component[2]=color_component_code(true,}}}color_component_code(isComponentNoneZero,if(!isComponentNoneZero){if(!color_eq0){if(!color_eq1){if(!color_minus2_div2_eq0){color_component[i]=(color_mcolor_component[i]=2+co}}color_component[i]=0}if(!color_minus1_eq0){if(!color_minus1_eq1){color_minus1_minus2_if(!color_minus1_minus2_div2_eq0){color_minus1_minus2_divcolor_component[i]=color_component[i]=3+co}color_component[i]=}}}}attribute_data_multiple_refresidual_zero_run_length=zero_run_length_code()for(j=0;j<multi_attr_group_num;j++){if(residual_zero_run_length=maxLatency){}}}}userdata_bitstream(){u(8)}}幾何移除重復(fù)點(diǎn)標(biāo)志geom_remove_duplicat屬性存在標(biāo)志attribute_prese最大屬性數(shù)減一max_num_attrim_attributes_minus1不出現(xiàn)在碼流的時(shí)候幾何量化步長(zhǎng)有效值geometry_quant_step_sign21位無(wú)符號(hào)整數(shù),取值范圍為[0,221幾何量化步長(zhǎng)指數(shù)geometry_quant_step_exp幾何孤立點(diǎn)編碼模式標(biāo)志single_mod無(wú)符號(hào)整數(shù)。其值指示占位碼編碼時(shí)鄰域節(jié)點(diǎn)占位信息的搜索范圍邊長(zhǎng)。該搜索范圍大小為幾何編碼狀態(tài)存儲(chǔ)標(biāo)志save_state屬性數(shù)據(jù)存在標(biāo)志attribute_data_present_flag[a01屬性數(shù)據(jù)數(shù)目減一attribute_data_num_set_minus1[a持多維反射率屬性維度分組,同一維度組內(nèi)的多維屬性需要按組解碼碼流。multi_attri_group_id[i]表示第i個(gè)維度屬性屬于第multi_attri_group_id[i]屬性維度分組,取值介于0到127之間。通過累加連續(xù)相同multi_attri_gr屬性信息開啟標(biāo)志multi_data_set_flag[at以使用一套屬性信息;值為1表示由屬性索引attrIdx確定的屬性支持使用多套屬性信息。當(dāng)multi_data_set_flag[attrIdx]不出現(xiàn)在息的數(shù)目,當(dāng)attribute_info_num_屬性輸出位深減一output_bit_depth無(wú)符號(hào)整數(shù),取值范圍為[0,31],用于表示屬性輸出位深度。屬性output_bit_depth_minus1+1。如果該語(yǔ)大屬性量化參數(shù)maxQp=127。亮度默認(rèn)值為0。色度通道Cb的量化參數(shù)chromaQpCb=Clip(minQp,maxQp,attr_quant_param+默認(rèn)值為0。色度通道Cr的量化參數(shù)chromaQpCr=Clip(minQp,maxQp,attr_quant_param+顏色殘差編碼順序開關(guān)order_sw顏色重排序模式color_reorder無(wú)符號(hào)整數(shù),取值范圍為[0,8]。用于表無(wú)符號(hào)整數(shù),取值范圍為[0,8]。用于表示屬性預(yù)測(cè)殘差或變換系數(shù)的自適應(yīng)指數(shù)哥倫布編碼滑動(dòng)窗口大小。自適應(yīng)指數(shù)哥倫布編碼滑動(dòng)窗口大無(wú)符號(hào)整數(shù),取值范圍為[0,2],用于表示反射率屬無(wú)符號(hào)整數(shù),取值范圍為[0,8]。用于表反射率屬性預(yù)測(cè)精度值pred_fixed_point_f最大搜索的鄰居點(diǎn)數(shù)對(duì)數(shù)值減七max_num_of_neighbours_無(wú)符號(hào)整數(shù),取值范圍為[0,3]。用于表示搜索的最大已編碼鄰居點(diǎn)數(shù)。最大搜索的鄰居點(diǎn)數(shù)為屬性殘差二次預(yù)測(cè)cross_componen最近鄰點(diǎn)預(yù)測(cè)參數(shù)一nearest_pred_param1和最近鄰點(diǎn)預(yù)測(cè)參數(shù)二nearest_的閾值為attr_quant_param*nearest無(wú)符號(hào)整數(shù),取值范圍為[0,7]。用于表示屬性值變化統(tǒng)計(jì)窗口的大小。統(tǒng)計(jì)窗口大小pred_dist_weight_group_size=1<<pred_dist_weight_group_size_log2。屬性變換點(diǎn)數(shù)高16位部分transform_segment_size_upper和屬性變換點(diǎn)數(shù)低16位部分transform_segment_size_lower屬性變換系數(shù)量化參數(shù)差值attr_transform_qp變換系數(shù)量化參數(shù)為attrTransformQp=attr_quant_param+attr_tra無(wú)符號(hào)整數(shù),取值范圍為[0,10]。用于表示變換系數(shù)的最大緩存參數(shù)。變換系數(shù)的最大緩存為有符號(hào)整數(shù),取值范圍為[-16,16]。用于表示有符號(hào)整數(shù),取值范圍為[-16,16]。用于表示預(yù)測(cè)有符號(hào)整數(shù),取值范圍為[-16,16]。用于表示預(yù)測(cè)有符號(hào)整數(shù),取值范圍為[-16,16]。用于表示預(yù)測(cè)變換中點(diǎn)云自適應(yīng)量化工具標(biāo)志color_qp_ad反射率同組共用第一個(gè)點(diǎn)預(yù)測(cè)值標(biāo)志refl_group_pr無(wú)符號(hào)整數(shù),取值范圍為[0,9]。用于表示在屬性變換編碼中變換參數(shù)的最大延遲點(diǎn)數(shù)。coeffLengthControl=(1<<(coeff_length_control_log2_minus8+8))。最大延遲點(diǎn)數(shù)為maxLatency=maxNumofCoeff*coe跨類型的屬性預(yù)測(cè)cross_attr_typ跨類型的屬性預(yù)測(cè)權(quán)重參數(shù)2cross_attr_type_無(wú)符號(hào)整數(shù),取值范圍為[0,65535]。用于表示點(diǎn)云幀在點(diǎn)云序列中的序號(hào),每個(gè)點(diǎn)云幀的序號(hào)為幀內(nèi)點(diǎn)云片數(shù)量減一frame_num_slframe_num_slice_minus1bounding_box_offset_x=bounding_box_offset_xbounding_box_offset_y=bounding_box_offset_ybounding_box_offset_z=bounding_box_offset_z包圍盒寬度高16位部分bounding_box_size_width_upper和包圍盒寬度低16位部分16位無(wú)符號(hào)整數(shù)。表示包圍盒寬度32位無(wú)符號(hào)整數(shù)的高16位和低16位。包圍盒寬度為bounding_box_size_width=bounding_box_size_width_upper<<16+bounding_box_size_width_包圍盒高度高16位部分bounding_box_size_height_upper和包圍盒高度低16位部分16位無(wú)符號(hào)整數(shù)。表示包圍盒高度32位無(wú)符號(hào)整數(shù)的高16位和低16位。包圍盒高度為_lower。包圍盒深度高16位部分bounding_box_size_depth_upper和包圍盒深度低16位部分16位無(wú)符號(hào)整數(shù)。表示包圍盒深度32位無(wú)符號(hào)整數(shù)的高16位和低16位。包圍盒深度為bounding_box_size_depth=bounding_box_size_depth_upper<<16+bounding_box_size_depth_片幾何孤立點(diǎn)編碼模式標(biāo)志gsh_single_mo標(biāo)為slice_bounding_box_offset_x=slice_boun標(biāo)為slice_bounding_box_offset_y=slice_boun標(biāo)為slice_bounding_box_offset_z=slice16位無(wú)符號(hào)整數(shù)。表示片所含點(diǎn)數(shù)的高16位和低16位。片所含點(diǎn)數(shù)為slice_num_points=無(wú)符號(hào)整數(shù),取值范圍為[0,65535]。表示片的標(biāo)號(hào)。定義的片的屬性信息索引attribute_id無(wú)符號(hào)整數(shù),取值范圍為[0,127]。用于表示屬性片使用的屬性頭中相應(yīng)類型屬性的第有符號(hào)整數(shù),取值范圍為[-32,32]。用于表示色亮度屬性或反射率屬性量化參數(shù)的點(diǎn)云幾何量化前后點(diǎn)數(shù)比值color_qp_adju無(wú)符號(hào)整數(shù),取值范圍為[0,127]。用于表示點(diǎn)云自適應(yīng)量化工具八叉樹層級(jí)孤立點(diǎn)模式標(biāo)志single_point_eligible_flag_per_depth[de幾何殘差相對(duì)符號(hào)序號(hào)geom_residual_ord_rel_sign[狀態(tài)最多為geom_residual_max_幾何殘差絕對(duì)值減一除二占用位數(shù)num_bits_geom_residual_minus1[n幾何殘差絕對(duì)值減一除二geom_residual_minus1_div2[n][幾何殘差絕對(duì)值減一除二余數(shù)geom_residual_minus1_div2_remain[n幾何孤立點(diǎn)模式標(biāo)志符geom_single8位無(wú)符號(hào)整數(shù)。8個(gè)位分別表示當(dāng)前節(jié)點(diǎn)的8個(gè)子節(jié)點(diǎn)是否被占用,某一位值為0表示該位對(duì)應(yīng)幾何子節(jié)點(diǎn)中重復(fù)點(diǎn)標(biāo)志num_duplicated_poi幾何子節(jié)點(diǎn)中重復(fù)點(diǎn)數(shù)目減二num_duplicated_points_mi零游程減去一zero_run_len顏色分量殘差符號(hào)color_component_si顏色值減去二除以二等于零color_minus2_div2顏色值減去二除以二大于零color_minus2_div2_mi顏色值減去一為零標(biāo)志color_minus1顏色值減去一為一標(biāo)志color_minus1顏色值減去一再減去二除以二等于零color_minus1_minus2_div2_顏色值減去一再減去二除以二大于零color_minus1_minus2_div2_min反射率殘差絕對(duì)值減一的奇偶標(biāo)志refl_minus反射率殘差絕對(duì)值減一除二等于零標(biāo)志refl_minus1_di反射率殘差絕對(duì)值減一除二等于一標(biāo)志refl_minus1_di反射率殘差絕對(duì)值減一除二后減二refl_minus1_div2顏色第一分量殘差值為零標(biāo)志color_first_comp_二值變量。值為0表示顏色第一分量殘差值不為0;值為1表示顏色第一分量殘差值為0。當(dāng));顏色第二分量殘差值為零標(biāo)志color_second_comp_二值變量。值為0表示顏色第二分量殘差值不為0;值為1表示顏色第二分量殘差值為0。當(dāng));位串‘0x00000105’。標(biāo)識(shí)用戶數(shù)據(jù)的開始。用b=read_bits(1)CodeNum=2leadingZeroBits+k-2k+read_bits(leadingZeroBits+k)10ue(v)和se(v)描述的語(yǔ)法元素使用0階指數(shù)哥倫布碼,其00112-1324-2536-3k(注:valueS記錄了預(yù)先連續(xù)讀進(jìn)多少位才會(huì)使valueT的最高位為1。這valueS=0的ctxIdx,并根據(jù)ctxIdx導(dǎo)出二元符號(hào)模型ctx(見2)解析當(dāng)前二元符號(hào)(見4)將3)得到的二元符號(hào)串與8.3.4中對(duì)應(yīng)的表格進(jìn)行比較。如果該二元符號(hào)串與表格中某個(gè)二元符號(hào)串相匹配,則完成二元符號(hào)串的解析;否則回到步驟1),繼續(xù)解析下一個(gè)二元符數(shù)組的索引值,語(yǔ)法元素的每個(gè)二元符號(hào)的ctxIdx=ctxIdxInc+ctxIdxSt見.2001single_point_eligibl0101見.201見9.2.63num_bits_geom_residual見9.2.6見9.2.6301見.45見.38見.34見.34見.56見.34見.36見.33見.33color_minus1_minus2_見.560101見.31見.31見.31見.54),其中LowOccNum和HighOccNum表示當(dāng)前節(jié)點(diǎn)的鄰居節(jié)點(diǎn)的子節(jié)點(diǎn)中,位于較低層的被占據(jù)子節(jié)點(diǎn)=0,1,2,…,7),codedOccupctx_ParentIdx、ctxChild和ctxFromMemory由得到:由得到:.3確定color_eq0,color_eq1,color_minus2_div2_eq0,c0√×1×2×√3√×4×5×√6××7××0√×1×2×√3××0√×1×2×√3××0√√1×2√×3√√4×5√×0√√1×2√×_eq00√√1×2√×0√×√√1××2×√√×3××01234將color_minus2_div2_minus1、color_minus1_minus2_div2_minus1、refl_minus1_div2_minus2由k階指數(shù)哥倫布二值化,其中k由9.3.10屬性解碼過程計(jì)算所得;設(shè)二值化后為b0b1…bmbm+1…b2m+),),),refl_minus1_div2_minus2,color_0123color_minus1_minus2_01m+1m+2012345000333111444222555000333111444222555a)如果BypassFlag的值為1,執(zhí)行decode_bypass過程(見.4b)否則,如果StuffingBitFlag的值為1,則執(zhí)行decode_aec_stuffing_bit過程(見c)否則,令cFlag為1,執(zhí)行decode_decision過程(見.2)。.2decode_dpredMps=0while(valueT<0x100&&valueS<bo}if(valueT<0x100)bFlag=1bFlag=0}if(rT1){}}if(rS2==valueS)valueT=valueT-rT2valueT=256+((valueT<<1)|read_bits(1))}binVal=predMps}}.3decode_aec_stuffdecode_aec_stuffing_bit過程的輸入是bFldecode_aec_stuffing_等于4,ctx0->mps等于0。令cFlag等于0,ctx等于ctx0,帶入decode_decision過程實(shí)現(xiàn)decode_aec_stuffing_bit過程。decode_aecpredMps=0while(valueT<0x100&&valueS<bo}if(valueT<0x100)bFlag=1bFlag=0}if(rT1){}}if(rS2==valueS)valueT=valueT-rT2valueT=256+((valueT<<1)|read_bits(1))}binVal=predMps}}.4decode_bvalueS=0valueS++}if(valueT<0x100)bFlag=1bFlag=0}}if(valueT>=(256+rT1)){}binVal=predMps}if(rS2==valueS)valueT=valueT-rT1valueT=256+((valueT<<1)|read_bits(1)}}}}update_ctx(){elseif(ctx->cycno==2)if(ctx->cycno<=2)}elseif(ctx->cycno=if(binVal==ctx->mps)ctx->lgPmps=ctx->lgPmps-(ctx->lgPmps>>cwr)-(ctx->lgPmps>>(cwr+2))breakctx->lgPmps=ctx->lgPmpbreakctx->lgPmps=ctx->lgPmp}ctx->lgPmps=2047-ctx->l}}}采用截?cái)嘁辉a的反二值化方法011012001300014000015000001…000000…maxVal-1000000…1000000…0012345…maxVal-1011012001300014000015000001…012345001109解碼過程9.1解碼過程概述序列解碼過程如下:3.2)解碼幾何數(shù)據(jù)(見9.24.1)解碼屬性片頭;若當(dāng)前屬性片頭起始碼是0x07,表示顏色對(duì)應(yīng)的點(diǎn)云屬性片頭;若當(dāng)前4.2)解碼屬性數(shù)據(jù)(見9.35.3)如果遇到幀起始碼,生成重建點(diǎn)云(見9.4繼續(xù)執(zhí)行第二步;5.4)如果遇到序列結(jié)束碼,生成重建點(diǎn)云(見9.4)。9.2幾何數(shù)據(jù)解碼過程9.2.1概述幾何劃分解碼(見9.2.2)。幾何節(jié)點(diǎn)解碼(見9.2.3)。宏塊幾何劃分解碼(9.2.4)。如果該宏塊的geom_tree_type=0,按照9.2.3描述的過程進(jìn)行解碼。如果該宏塊的geom_tree_type=1,按照9.2.5及9.2.6描述的過程進(jìn)行解碼。9.2.2幾何劃分解碼在幾何劃分深度為depth、三維位置為(xA,yAvailNodeOccupancy[depth][xA][yA][zA]=GeometryNodeOccupancyCnt[depth][xA][yA][zA]=(abs(xA-xN)>>occupancy_search_range_side_labs(yA-yN)>>occupancy_search_range_side_log2abs(zA-zN)>>occupancy_search_range_side_lGeometryNodeOccupancyCnt[dep為底的對(duì)數(shù),即MaxNodeSizeXLog2=slice_bounding_bo幾何劃分在Y方向最大對(duì)數(shù)尺寸MaxNo為底的對(duì)數(shù),即MaxNodeSizeYLog2=slice_bounding_bo為底的對(duì)數(shù),即MaxNodeSizeZLog2=slice_bounding_bo幾何節(jié)點(diǎn)占位碼GeometryNodeOccupancyCode[depth][xN][yN][zN]:表示幾何劃分類型標(biāo)識(shí)partitionSkip:3位標(biāo)識(shí)符。partitionSkip=0NodeSizeXLog2=MaxNodeSizeXLog2-depthXNodeSizeYLog2=MaxNodeSizeYLog2-depthYNodeSizeZLog2=MaxNodeSizeZLog2-depthZMinNodeSizeLog2=min{NodeSizeXLog2,NodeSizeYLog2,NodeSizeZLMaxNodeSizeLog2=max{NodeSizeXLog2,NodeSizeYLog2,NodeSizeZLif(MinNodeSizeLog2==MaxNodeSizeLog2)min_size_implicit_qtbt=0if(max_num_implicit_qtbt_before_ot>depth||min_sif(NodeSizeXLog2<MaxNodeSizeLog2)if(NodeSizeYLog2<MaxNodeSizeLog2)if(NodeSizeZLog2<MaxNodeSizeLog2)}9.2.3幾何節(jié)點(diǎn)解碼概述孤立點(diǎn)X方向相對(duì)坐標(biāo)PointOffse孤立點(diǎn)Y方向相對(duì)坐標(biāo)PointOffset當(dāng)前幾何節(jié)點(diǎn)的非空子節(jié)點(diǎn)個(gè)數(shù)GeometryNodeChi是否被暫時(shí)限制使用,0表示孤立點(diǎn)模式,1表示跳幾何孤立點(diǎn)模式中的模式標(biāo)識(shí)GeomSingleNo孤立點(diǎn)模式可用節(jié)點(diǎn)個(gè)數(shù)singlePointEligibleNodOccupancyCode=0maxCodedBins=maxNumOccupiedBins[partitionSknumCodedBins=0if((partitionSkip&2)&&(childIdxif((partitionSkip&4)&&(childIdx&bit=decode_decision()}}平面子節(jié)點(diǎn)被占據(jù)的個(gè)數(shù);HighOccNum表示當(dāng)前節(jié)點(diǎn)的鄰居節(jié)點(diǎn)中,高平面為0。獲取LowOccNum、HighOccNum后,通過.2確定對(duì)應(yīng)的上下文模型。preNodePlanarNum=0for(j=0;j<=4;j++){neighborOccupancyCode=GeometryNodeOccupancyCode[depth][xN+planarNodeOffset[j][0]][yN+planarNodeOffset[j][1]][zN+planarNodeOffset[j][2]]neighborOccupancyHighCode=!(neighborOccupancyCode&0x55)&&(!!(neighneighborOccupancyLowCode=(!!(neighborOccupancyCode&0x55))&&!(neighbif(neighborOccupancyHighCode||neighborOccupancyLowOccNum+=(neighborOccupancyLowCode>>iHighOccNum+=(neighborO}}LowOccNum=preNodePlanarHighOccNum=preNodePlanarNum>2parentNeiX=AvailNodeOccupancy[deparentNeiY=AvailNodeOccupancy[parentNeiZ=AvailNodeOccuctx_ParentIdx=parentNeiX+(pareadjChildIdx=adjacentctxChild|=!!(encodedChildNode[}ctxChild|=!!(encodedChildNode[minDime2ParentNeiInif(ChildNei){bit_ctx=ctx_combineParentIdx[ctx_ParentIdx]bit_ctx=combineSlideWindowIdx[ctx_ParentIdx]memoryVal=memoryChannel[ctxChild]ctxFromMemory=popcnt8(memobit_ctx=ctx_compute[idx]}yN,zN-1))的占用情況。memoryChannel[ctxchild]表示子節(jié)點(diǎn)組成的1024個(gè)上下文狀態(tài),表示三個(gè)共面父節(jié)點(diǎn)組成的上下文索引,ctx_compute[i]表示第i個(gè)子節(jié)點(diǎn)的上下文起始地址。以bit_ctx+context表示最終選擇的上下文。adjacentCIdx000000001001001001000000010010000001001000001000010000100001parentNeiX=AvailNodeOccupancyCnt[depth][xN+delparentNeiY=AvailNodeOccupancyCnt[depth][xN]parentNeiZ=AvailNodeOccupancyCnt[depth][xN][yctx26Parent=parentNeiX+(parectx26Parent+=(AvailNodeOccupancyCnt[depth][x+deltaX[childIdx][i]][y+deltaY[childIdx]}ctxFrom6Nei=(!!(ctx6Parent&0x0003))&&(!!(cfor(intj=0;j<3;j++){ctxFrom3FaceNei|=(!!((ctx26Parent[i]>>j)&0x01)<<(2ctxFrom3EdgeNei|=(!!((ctx26Parent[i]>>(j+3))&0x01)<<(2-j))}ctxFromParent=ctxHashMap[neiFromFadjChildIdx=adjacent!!(encodedChildNode[adjChildIdx[idx]>>3]}memoryVal=memoryChannel[childInformatictxFromMemory=popcnt8(mecontext=ctxFromParen有效位為3位。ctx6Parent表示與當(dāng)前待解碼節(jié)點(diǎn)父節(jié)點(diǎn)直接接觸的6個(gè)共面節(jié)點(diǎn)的占位情況。碼子塊的占位情況經(jīng)過狀態(tài)轉(zhuǎn)換后最近已解碼的8個(gè)符號(hào)的取值,以bit_ctx+context表示最終選memoryChannel[childInformation]=(me0000000000001001101001101001101001100000000101010101010000000101010101010000010110000010110000010110000010幾何節(jié)點(diǎn)尺寸解碼NodeSizeXLog2=MaxNodeSizeXLog2-depthXNodeSizeYLog2=MaxNodeSizeYLog2-depthYNodeSizeZLog2=MaxNodeSizeZLog2-depthZif(!(partitionSkip&4)ChildNodeSizeXLog2=NodeSizeXLog2-1ChildNodeSizeXLog2=NodeSif(!(partitionSkip&2)ChildNodeSizeYLog2=NodeSizeYLog2-1ChildNodeSizeYLog2=NodeSChildNodeSizeZLog2=NodeSizeZLog2-1ChildNodeSizeZLog2=NodeS孤立點(diǎn)解碼控制模式if(GeomSingleEligibleFlag[depth])singlePointEligibleGeomSingleNodeControlFlag=if(singlePointEligibleNodeCnt==5&&bit_count_equ1
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 安全教育家長(zhǎng)會(huì)課件
- 安全攻防培訓(xùn)課件
- 湖南全國(guó)計(jì)算機(jī)二級(jí)考試題庫(kù)單選題100道及答案
- 重慶市西南大學(xué)附中2022-2023學(xué)年高二下學(xué)期期末語(yǔ)文試題 無(wú)答案
- 大班交通安全教育
- 提升行政法學(xué)素養(yǎng)的試題及答案分享
- 數(shù)字系統(tǒng)課程設(shè)計(jì)
- 安全主題班會(huì)課件
- 《我與地壇》教學(xué)設(shè)計(jì)
- 人教版下冊(cè)語(yǔ)文園地三
- 2023年貴州省初中學(xué)業(yè)水平考試物理中考試卷真題(答案詳解)
- 2022年浙江省金華市義烏市小升初語(yǔ)文試卷(一)
- 22S803 圓形鋼筋混凝土蓄水池
- 中建機(jī)電工程實(shí)體質(zhì)量控制水暖
- 常見藻類圖譜(史上最全版本)
- 城市水污染的現(xiàn)狀及治理建議分析
- 電子CAD技能試題(4)555振蕩器
- DBJ51T 189-2022 四川省建設(shè)工程施工現(xiàn)場(chǎng)安全資料管理標(biāo)準(zhǔn)
- 江西省中考:《地理》科目2022年考試真題與答案解析
- 2023年四川省第一期醫(yī)療護(hù)理員理論考試試題及答案
- 高中英語(yǔ)-A Journey of Discovery教學(xué)課件設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論