徐嘉誠(chéng),方志軍,黃 勃,高永彬,周 恒
上海工程技術(shù)大學(xué),電子電氣工程學(xué)院,上海201620
目前,3D點(diǎn)云已被廣泛應(yīng)用于3D場(chǎng)景的表示。然而,點(diǎn)云往往會(huì)占用大量的傳輸帶寬或存儲(chǔ)空間。以每秒30幀,每個(gè)3D幀有30萬(wàn)個(gè)點(diǎn)的點(diǎn)云為例,原始點(diǎn)云視頻每秒需要約200 MB的存儲(chǔ)空間[1]。因此,點(diǎn)云壓縮成為研究的熱點(diǎn)。
在點(diǎn)云幾何信息壓縮研究中,精確的幾何信息重構(gòu)對(duì)于高質(zhì)量的渲染至關(guān)重要,因此幾何信息的無(wú)損壓縮在新興的動(dòng)態(tài)圖像專家組(moving picture experts group,MPEG)中得到了廣泛的關(guān)注和研究。最先進(jìn)的無(wú)損幾何信息壓縮技術(shù)可以有效的利用幾何信息重構(gòu)高質(zhì)量的點(diǎn)云數(shù)據(jù),但其碼率仍然超過(guò)每個(gè)占用體素(bits per occupied voxel,bpov)2比特[2],使用無(wú)損幾何信息壓縮技術(shù)壓縮密集點(diǎn)云時(shí)會(huì)占用大量存儲(chǔ)空間。在虛擬現(xiàn)實(shí)、增強(qiáng)現(xiàn)實(shí)和元宇宙等實(shí)際應(yīng)用場(chǎng)景中,往往對(duì)點(diǎn)云數(shù)據(jù)的重構(gòu)精度要求并不高,更加注重傳感器對(duì)點(diǎn)云數(shù)據(jù)的實(shí)時(shí)采集和高效傳輸。因此許多現(xiàn)有的點(diǎn)云幾何信息有損壓縮工作已經(jīng)集成到MPEG點(diǎn)云壓縮(point cloud compression,PCC)標(biāo)準(zhǔn)[3]中。MPEG提供點(diǎn)云幾何信息壓縮(geometry-point cloud compression,G-PCC)標(biāo)準(zhǔn)[4]作為點(diǎn)云幾何信息壓縮的基線。G-PCC標(biāo)準(zhǔn)[4]首先將原始點(diǎn)云數(shù)據(jù)轉(zhuǎn)換為體素化點(diǎn)云數(shù)據(jù),然后使用八叉樹(shù)編碼來(lái)壓縮點(diǎn)云,最后通過(guò)改變體素精度來(lái)調(diào)整碼率。然而在低碼率情況下,基于八叉樹(shù)的有損幾何信息壓縮MPEG G-PCC(Octree)[4]隨著碼率的降低,八叉樹(shù)的深度也降低,使得MPEG G-PCC(Octree)[4]只能在衡量碼率預(yù)算下保留更少的點(diǎn),造成點(diǎn)云數(shù)量以指數(shù)方式減少,并伴隨著塊效應(yīng)問(wèn)題。MPEG GPCC(Octree)[4]出現(xiàn)的大面積點(diǎn)云缺失問(wèn)題是由于在預(yù)測(cè)過(guò)程中,點(diǎn)云數(shù)據(jù)的誤差只通過(guò)均方誤差(mean square error,MSE)等粗略誤差來(lái)測(cè)量,因此生成的點(diǎn)云不能很好地保留原始點(diǎn)云的質(zhì)量。有時(shí)MSE與實(shí)際感知不符,或者存在較大差距。因?yàn)镸SE認(rèn)為每個(gè)體素點(diǎn)都有同樣重要的作用,所以較小的MSE并不意味著點(diǎn)云的質(zhì)量高。此外,在MSE很小的情況下,重構(gòu)后的點(diǎn)云數(shù)據(jù)存在大面積點(diǎn)云缺失問(wèn)題。近年來(lái)深度學(xué)習(xí)已經(jīng)在3D點(diǎn)云領(lǐng)域取得不錯(cuò)的成績(jī)[5~7],并且很多研究者使用深度學(xué)習(xí)方法研究3D點(diǎn)云壓縮[8~11]。Tu等[12]提出基于殘差塊的遞歸神經(jīng)網(wǎng)絡(luò),直接對(duì)原始激光雷達(dá)數(shù)據(jù)進(jìn)行壓縮并具有良好性能。但該方法是先將原始3D激光雷達(dá)數(shù)據(jù)轉(zhuǎn)換為二維矩陣,然后通過(guò)二維圖像壓縮方法進(jìn)行數(shù)據(jù)壓縮。因此,它不是一種通用的點(diǎn)云壓縮方法,不能很好地應(yīng)用于點(diǎn)云數(shù)據(jù)壓縮。目前,基于學(xué)習(xí)的點(diǎn)云壓縮方法[13,14]大多基于自編碼器框架。該類方法通過(guò)編碼器壓縮生成點(diǎn)云數(shù)據(jù)的潛在向量。在條件高斯分布下,隱向量保留原始點(diǎn)云的特征,并通過(guò)解碼器解壓縮。因此,重構(gòu)后的點(diǎn)云將更加合理和準(zhǔn)確。該類方法有效解決低碼率情況下基于八叉樹(shù)有損幾何信息壓縮出現(xiàn)的塊效應(yīng)問(wèn)題,但目前仍然存在大面積點(diǎn)云缺失問(wèn)題。
針對(duì)以上問(wèn)題,本文提出一種基于深度卷積生成對(duì)抗網(wǎng)絡(luò)(deep convolutional generative adversarial network,DCGAN)優(yōu)化的自編碼器3D點(diǎn)云幾何信息有損壓縮模型。該模型旨在結(jié)合自編碼器和生成對(duì)抗網(wǎng)絡(luò)的優(yōu)勢(shì),利用自編碼器有效提取深度特征,并使用DCGAN重構(gòu)高質(zhì)量的點(diǎn)云數(shù)據(jù)。DCGAN通過(guò)其博弈訓(xùn)練提升壓縮系統(tǒng)的整體性能。其中生成器的作用是生成幾乎與真實(shí)點(diǎn)云一致的點(diǎn)云數(shù)據(jù),判別器的作用是判斷輸入的點(diǎn)云是來(lái)自于生成器生成的點(diǎn)云數(shù)據(jù)還是真實(shí)的點(diǎn)云數(shù)據(jù)。生成器不斷地試圖“欺騙”判別器。判別器對(duì)輸入的生成點(diǎn)云數(shù)據(jù)或真實(shí)點(diǎn)云數(shù)據(jù)生成判斷結(jié)果,模型利用判決結(jié)果計(jì)算誤差并利用梯度下降法對(duì)神經(jīng)網(wǎng)絡(luò)參數(shù)進(jìn)行調(diào)整和優(yōu)化,最后使生成器對(duì)點(diǎn)云數(shù)據(jù)的前景和邊緣具有更大的權(quán)重。即,本文解碼器從周圍環(huán)境中重建缺失部分,并重建出高質(zhì)量,更加真實(shí)的點(diǎn)云。本文模型雖然解決了大面積點(diǎn)云缺失,并重建出高質(zhì)量的點(diǎn)云數(shù)據(jù),但同時(shí)出現(xiàn)碼率增大的問(wèn)題。為解決碼率增大的問(wèn)題,本文提出一種反卷積跳躍連接(deconvolution hopping connection,DHC)。該結(jié)構(gòu)將解碼器各層信息傳遞到最后輸出層進(jìn)行特征融合,最終解碼器通過(guò)DHC結(jié)構(gòu)利用較少的信息重建出高質(zhì)量的點(diǎn)云數(shù)據(jù)。簡(jiǎn)而言之,解碼器能夠在更低的碼率下重建出高質(zhì)量的點(diǎn)云。
本文主要貢獻(xiàn)如下:
1)提出一種基于DCGAN優(yōu)化的自編碼器點(diǎn)云幾何信息有損壓縮模型。根據(jù)我們現(xiàn)有掌握的知識(shí),本文是首次嘗試使用生成對(duì)抗網(wǎng)絡(luò)進(jìn)行3D點(diǎn)云幾何信息有損壓縮的論文。值得注意的是,本文所提出的DCGAN解決了大面積點(diǎn)云缺失,并且該模型獲得了視覺(jué)質(zhì)量更好的重建點(diǎn)云。
2)提出一種反卷積跳躍連接結(jié)構(gòu),提高了點(diǎn)云解碼的精度。解碼器能夠在更低的碼率情況下重建一個(gè)高質(zhì)量的點(diǎn)云數(shù)據(jù)。
本文提出的端到端優(yōu)化的3D點(diǎn)云幾何信息有損壓縮模型由三個(gè)模塊組成:基于3D卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)的編碼器、量化器和基于深度卷積生成對(duì)抗網(wǎng)絡(luò)(deep convolutional generative adversarial network,DCGAN)的解碼器。本文基于DCGAN優(yōu)化的自編碼器壓縮模型對(duì)體素化點(diǎn)云數(shù)據(jù)進(jìn)行壓縮和解壓縮,該壓縮系統(tǒng)框架如圖1所示。首先,對(duì)3D點(diǎn)云數(shù)據(jù)進(jìn)行體素化處理得到體素化點(diǎn)云數(shù)據(jù)。然后,體素化點(diǎn)云數(shù)據(jù)經(jīng)過(guò)基于DCGAN優(yōu)化的自編碼器壓縮模型。該壓縮模型包括一個(gè)編碼器E、一個(gè)量化器Q和一個(gè)解碼器D。編碼器E將體素化點(diǎn)云數(shù)據(jù)作為輸入并生成一個(gè)壓縮表示,量化器Q將由E的輸出量化表示并輸入解碼器D,重構(gòu)一個(gè)體素化點(diǎn)云。因此,我們的壓縮模型可以形式化表示為
圖1 壓縮模型框架圖Fig.1 The structure of the compression model
本文選擇體素化點(diǎn)云作為點(diǎn)云的3D表示,可以簡(jiǎn)單地將其視為點(diǎn)云被限制在一個(gè)規(guī)則的3D體素內(nèi)。點(diǎn)云幾何信息(x,y,z)被量化為規(guī)則的、給定步長(zhǎng)和軸向?qū)R的3D體素。其中包含點(diǎn)的體素被稱為占用體素,反之沒(méi)有包含點(diǎn)的體素被稱為非占用體素。類似于一般2D圖像處理中的行索引和列索引,本文假設(shè)體素是通過(guò)整數(shù)格子中的位置進(jìn)行尋址,其中UR={0,…,R-1},R=2N表示分辨率上可能的點(diǎn)的集合,N為整數(shù)。因此,(x,y,z)被視為N位無(wú)符號(hào)整數(shù)。本文的體素化點(diǎn)云{ui}是一個(gè)占用體素的有限集或任意索引列表,每個(gè)體素表示如下
其中,第i個(gè)體素的坐標(biāo)信息表示為(xi,yi,z)i,本文將體素化點(diǎn)云定義為{ui}?UR的集合,其對(duì)應(yīng)的體素網(wǎng)格信息Vg表示如下
(3)式表達(dá)的意思為,如果體素v∈{ui},即Vg=1,v為占用體素。反之,Vg=0,v為非占用體素。點(diǎn)云幾何信息在本文中被稱為體素化點(diǎn)云。體素化點(diǎn)云數(shù)據(jù)使得本文應(yīng)用3D卷積能更高效和緊湊地表示三維空間中的體素間關(guān)聯(lián)性。
通常情況下,基于自編碼器的壓縮框架分為分析變換(編碼)和合成變換(解碼)兩個(gè)階段。在編碼過(guò)程中,利用3D CNN對(duì)體素化點(diǎn)云空間相關(guān)性進(jìn)行分析和利用。對(duì)于任意一個(gè)體素化點(diǎn)云v,本文的目標(biāo)是得到更加緊湊的潛在特征w,該潛在特征是由長(zhǎng)度、寬度、高度和通道組成的4D張量。分析轉(zhuǎn)換表示為:w=fe(v;θe),網(wǎng)絡(luò)參數(shù)為θe。相應(yīng)地,鏡像設(shè)計(jì)了一種合成變換,將量化的潛在特征解碼為重構(gòu)的體素化點(diǎn)云合成變換表示為=網(wǎng)絡(luò)參數(shù)為ψd。
在編碼器中,本文提出3D卷積編碼網(wǎng)絡(luò)學(xué)習(xí)體素化點(diǎn)云數(shù)據(jù)更加緊湊的潛在特征。編碼網(wǎng)絡(luò)由三個(gè)3D卷積層組成,每層有32個(gè)卷積核,每層的核大小分別為9、5、5。除了第三個(gè)3D卷積層外,其他3D卷積層后面都有一個(gè)偏置(bias)層和線性整流(ReLu)激活層。量化器通過(guò)熵編碼器將編碼網(wǎng)絡(luò)輸出的潛在特征變成二進(jìn)制流。
在解碼器中,本文提出由生成器和判別器組成的DCGAN解壓重構(gòu)體素化點(diǎn)云。以下是生成器和判別器網(wǎng)絡(luò)的詳細(xì)描述。
生成器:圖1中生成器網(wǎng)絡(luò)用接收到的編碼器輸出信息重建原始體素化點(diǎn)云數(shù)據(jù)。生成器網(wǎng)絡(luò)由三個(gè)3D反卷積層組成,前兩層每層有32個(gè)反卷積核,每層的核大小分別為5。最后一層反卷積層只有1個(gè)反卷積核,核大小為9。每個(gè)3D反卷積層后面都有一個(gè)偏置(bias)層和一個(gè)線性整流(ReLu)激活層。最后,解碼器對(duì)3D反卷積網(wǎng)絡(luò)輸出的特征圖進(jìn)行非占用體素處理,得到體素化點(diǎn)云。
判別器:點(diǎn)云數(shù)據(jù)分類網(wǎng)絡(luò)構(gòu)成判別器,如圖1解碼器部分所示。將生成的3D點(diǎn)云數(shù)據(jù)和真實(shí)的3D點(diǎn)云數(shù)據(jù)輸入到判別器中,由判別器判斷哪個(gè)數(shù)據(jù)是真實(shí)的。該判別器利用三個(gè)3D卷積層提取特征,其中每個(gè)卷積層后面都有一個(gè)偏置(bias)層和泄露線性整流(LeakyReLu)激活層,通過(guò)激活函數(shù)正則化(dropout)層以概率方式將輸入的激活函數(shù)值改變?yōu)?,防止網(wǎng)絡(luò)過(guò)擬合。最后,利用扁平(flatten)層生成一維數(shù)據(jù),利用稠密(dense)層作為最后一層進(jìn)行1或0的真假分類。此外,判別器僅在訓(xùn)練階段與生成器進(jìn)行對(duì)抗式迭代優(yōu)化,在測(cè)試階段僅通過(guò)生成器就能夠重建得到良好的體素化點(diǎn)云。
本文使用DCGAN解壓縮重建出高質(zhì)量點(diǎn)云,但卻出現(xiàn)碼率增大的問(wèn)題。為了獲得高質(zhì)量重建點(diǎn)云數(shù)據(jù)的同時(shí)降低碼率,本文提出一種反卷積跳躍連接結(jié)構(gòu)(deconvolution hopping connection,DHC)。通過(guò)該結(jié)構(gòu)改進(jìn)解壓縮網(wǎng)絡(luò),解碼器能夠獲得更全面的點(diǎn)云信息,并在更低的碼率下獲得更高的解碼精度。如圖1所示,3D反卷積網(wǎng)絡(luò)通過(guò)DHC結(jié)構(gòu)將前面各層輸出信息傳輸?shù)阶詈笠粚舆M(jìn)行特征融合,通過(guò)融合特征重構(gòu)出高質(zhì)量點(diǎn)云數(shù)據(jù)。在DHC結(jié)構(gòu)中,三個(gè)不同的3D反卷積層完成三個(gè)跳躍連接。每個(gè)反卷積層有32個(gè)反卷積核,核的大小為5。由于跳躍連接層級(jí)不同,三個(gè)3D反卷積核的步幅大小分別為8,4,2。
為了減少存儲(chǔ)和傳輸所需的信息量,量化是多媒體數(shù)據(jù)壓縮的一個(gè)重要步驟。然而,像舍入函數(shù)這樣的量化函數(shù)的導(dǎo)數(shù)為零或未定義,會(huì)造成在端到端訓(xùn)練方案中,反向傳播的直接舍入是不可微的。相反,Ballé等[15]用加性均勻噪聲代替量化,確保了可微性。=w+α,其中α為之間的隨機(jī)均勻噪聲是具有實(shí)際舍入誤差的噪聲潛在表示。遵循以w為中心的均勻分布Η,表示為w:
熵編碼是利用統(tǒng)計(jì)冗余進(jìn)行源壓縮的關(guān)鍵。理論上,源符號(hào)(如特征元素)的熵界與其概率分布密切相關(guān),準(zhǔn)確地估計(jì)熵界對(duì)率失真優(yōu)化起著關(guān)鍵作用。本文量化后的潛在特征碼率為=,用作為的自概率密度函數(shù)(p.d.f)。
量化器將編碼器輸出的潛在特征轉(zhuǎn)換為二進(jìn)制流傳輸?shù)浇獯a器。利用Minnen等[16]提出熵編碼算法對(duì)數(shù)據(jù)進(jìn)行量化,并計(jì)算每個(gè)輸入占用體素的碼率(bpov)。解碼器將接收到的二進(jìn)制流重建出體素化點(diǎn)云數(shù)據(jù)。熵編碼算法由非線性網(wǎng)絡(luò)組成,因此本文提出的模型是一種基于數(shù)據(jù)驅(qū)動(dòng)的端到端3D點(diǎn)云幾何信息有損壓縮模型。
在有損壓縮問(wèn)題中,通常必須在離散化潛在特征的熵和壓縮引起的誤差之間進(jìn)行權(quán)衡。因此,我們的目標(biāo)是使占用體素的碼率R和失真D加權(quán)和最小,使率失真性能達(dá)到最大化。本文模型損失函數(shù)為
其中,φ為率失真權(quán)衡參數(shù)控制模型壓縮性能,D為失真損失函數(shù),計(jì)算如下
其中,超參數(shù)γadv和γdec是平衡對(duì)抗損失函數(shù)和解碼損失函數(shù)的權(quán)重,Ladv為對(duì)抗損失函數(shù),Ldec為解碼損失函數(shù)。
對(duì)抗損失函數(shù):本文將g和d作為參變量函數(shù)。g表示從二進(jìn)制流生成實(shí)際樣本的映射函數(shù)。d表示為區(qū)分真實(shí)的樣本和生成的數(shù)據(jù)的判別函數(shù)。對(duì)抗損失函數(shù)的定義如下
解碼損失函數(shù):本文的解碼過(guò)程可以視為二分類過(guò)程,其中每個(gè)點(diǎn)v的體素分類為占用或未占用。然而,由于大多數(shù)點(diǎn)云非常稀疏,體素化的點(diǎn)云通常等于零。因此,被占用的體素不能被準(zhǔn)確地學(xué)習(xí),即網(wǎng)絡(luò)無(wú)法有效學(xué)習(xí)3D體素化點(diǎn)云數(shù)據(jù)。為了保持占用體素和未占用體素之間的平衡,本文采用文獻(xiàn)[17]中定義的σ-平衡焦點(diǎn)損失函數(shù),定義解碼損失函數(shù)
解碼器將輸出體素化點(diǎn)云數(shù)據(jù)v,其關(guān)聯(lián)值為pv。并且,如果v=1定義為pv,否則定義為1-pv。同樣的,如果v=1,σv定義為σ,否則定義為1-σ。在本文實(shí)驗(yàn)中,σ設(shè)置為0.9,ξ設(shè)置為2。
本文提出的模型是通過(guò)數(shù)據(jù)驅(qū)動(dòng)的端到端優(yōu)化3D點(diǎn)云幾何信息的有損壓縮,需要大量的點(diǎn)云進(jìn)行訓(xùn)練,所以本文訓(xùn)練點(diǎn)云幾何信息有損壓縮模型時(shí)使用ModelNet40[18]數(shù)據(jù)集。作為最廣泛使用的點(diǎn)云分析基準(zhǔn),ModelNet40因其類別多樣、形狀清晰、數(shù)據(jù)集結(jié)構(gòu)良好等而廣受歡迎。為將該數(shù)據(jù)集轉(zhuǎn)換為3D體素化點(diǎn)云數(shù)據(jù),首先對(duì)每個(gè)網(wǎng)格的表面進(jìn)行均勻采樣,然后將點(diǎn)云數(shù)據(jù)縮放為64×64×64體素。此外,本文的訓(xùn)練數(shù)據(jù)集由Model-Net40中的12 311個(gè)網(wǎng)格組成,其中包括飛機(jī)、汽車、植物和燈等40個(gè)類別。數(shù)據(jù)集分為兩個(gè)子集:用于訓(xùn)練的9 843個(gè)樣本和用于測(cè)試的2 468個(gè)樣本,這兩個(gè)子集包含ModelNet40中所有的40個(gè)類別。在評(píng)價(jià)實(shí)驗(yàn)中本文在微軟體素化上半身(Microsoft Voxelized Upper Bodies,MVUB)[19]數(shù)據(jù)集中的Andrew、David、Phil和Sarah 4個(gè)序列上進(jìn)行模型的幀內(nèi)壓縮性能評(píng)估。該數(shù)據(jù)集中的點(diǎn)云數(shù)據(jù)是分別針對(duì)Andrew、David、Phil和Sarah的3D點(diǎn)云視頻序列,以30幀每秒的速度在其中的7到10 s內(nèi)捕獲得來(lái)的。
本文使用python3.6.7實(shí)現(xiàn)了基于Tensorflow-GPU 1.13.1平臺(tái)的模型。在一臺(tái)i7-8700 CPU和GTX1080ti GPU(11 GB顯存)的計(jì)算機(jī)上訓(xùn)練本文模型。使用Adam優(yōu)化方法訓(xùn)練網(wǎng)絡(luò),學(xué)習(xí)速率為0.000 1。在30 000步內(nèi)對(duì)模型進(jìn)行優(yōu)化訓(xùn)練,批量大小為64。在訓(xùn)練階段為進(jìn)行更加公平的率失真性能比較,本文模型將損失函數(shù)定義式(4)中率失真權(quán)衡φ分別設(shè)為1.0×10-4,1.0×10-5,5.0×10-4,5.0×10-5和5.0×10-6,生成5個(gè)壓縮性能模型。
在評(píng)價(jià)實(shí)驗(yàn)中使用MVUB的體素化點(diǎn)云數(shù)據(jù)集。原始點(diǎn)云和重建點(diǎn)云可能有不同數(shù)量的點(diǎn)。例如,在本文模型中,重建點(diǎn)云比原始點(diǎn)云多出大量點(diǎn),而在MPEG G-PCC的方法中則相反。點(diǎn)到面對(duì)稱PSNR(point to plane symmetric peak signal to noise ratio,PPS-PSNR)[20]比標(biāo)準(zhǔn)PSNR更加客觀和準(zhǔn)確。因此,本文測(cè)量每個(gè)占用體素的碼率,并使用PPS-PSNR評(píng)估點(diǎn)云幀質(zhì)量,PPS-PSNR計(jì)算公式如下
其中,Psymmetric(A,B)表示點(diǎn)云數(shù)據(jù)A中點(diǎn)到點(diǎn)云數(shù)據(jù)B中面之間最近距離的點(diǎn)到面對(duì)稱峰值信噪比(PPS-PSNR)計(jì)算,并且本文使用BD-BR[21]和BDPSNR[21]對(duì)不同的壓縮模型進(jìn)行客觀比較。
為進(jìn)行公平的率失真性能比較,對(duì)相似的碼率范圍或失真執(zhí)行不同的方法。
1)對(duì)于MPEG G-PCC(Octree),將Position Quantization Scale設(shè)置為0.25、0.5、0.75、0.875和0.937 5,其他參數(shù)保持默認(rèn)值。
2)對(duì)于Quach等[13]方法,在訓(xùn)練中率失真權(quán)衡φ分別設(shè)為1.0×10-4,1.0×10-5,5.0×10-4,5.0×10-5和5.0×10-6,得到5種不同碼率的模型。
表1為本文模型與Quach等[13]方法和MPEG G-PCC標(biāo)準(zhǔn)[4]的率失真性能比較的增益結(jié)果(表1中用“+”表示相對(duì)于本文模型的增加,“-”表示減少)。
表1 率失真性能比較Table 1 Compar ison of r ate-distortion per for mance
由表1可以看出,本文模型分別與Quach等[13]方法和MPEG G-PCC標(biāo)準(zhǔn)[4]進(jìn)行比較,BD-BR平均降低了16.60%和62.01%,BD-PSNR平均增加了1.089 9 dB和4.497 1 dB。率失真曲線圖如圖2所示,因?yàn)樵诘痛a率的情況下Quach等[13]方法和MPEG GPCC標(biāo)準(zhǔn)[4]會(huì)出現(xiàn)點(diǎn)云缺失,導(dǎo)致峰值信噪比較低,然而本文提出端到端優(yōu)化的3D點(diǎn)云幾何信息有損壓縮模型,利用自編碼器和深度卷積生成對(duì)抗網(wǎng)絡(luò)算法解決了大面積點(diǎn)云缺失問(wèn)題并重建出高質(zhì)量的點(diǎn)云數(shù)據(jù),使得本文模型在相同碼率情況下峰值信噪比增益顯著。在中碼率情況下Quach等[13]方法和MPEG GPCC標(biāo)準(zhǔn)[4]僅伴隨著部分點(diǎn)云缺失,峰值信噪比相對(duì)較高。因此本文模型在中碼率情況下相較于此兩種方法峰值信噪比增益不顯著。
圖2 率失真曲線Fig.2 Rate-distortion curves
圖3為本文模型與現(xiàn)有兩種點(diǎn)云壓縮方法的視覺(jué)質(zhì)量對(duì)比。在同一量級(jí)的碼率下,Quach等[13]方法和MPEG G-PCC標(biāo)準(zhǔn)[4]只能在衡量碼率預(yù)算下保留更少的點(diǎn),所以其編解碼器的重構(gòu)點(diǎn)云相對(duì)稀疏并且解壓重建出來(lái)的點(diǎn)云數(shù)據(jù)存在著大量點(diǎn)數(shù)的丟失?;邳c(diǎn)云模型的MPEG G-PCC失真傾向于隨機(jī)噪聲,所以在低碼率情況下還伴隨著塊效應(yīng)的問(wèn)題。相比之下,本文的模型具有更好的視覺(jué)質(zhì)量。一個(gè)有趣的結(jié)果是真實(shí)點(diǎn)云中存在一些破損的部分,這些部分是由于采集不完整或者失敗造成的,但本文重建的點(diǎn)云填補(bǔ)了真實(shí)點(diǎn)云的一些破損的部分。這是由于本文模型利用自編碼器有效提取深度特征,并通過(guò)DCGAN博弈訓(xùn)練提升壓縮系統(tǒng)的整體性能,使得生成器對(duì)點(diǎn)云數(shù)據(jù)的前景和邊緣具有更大的權(quán)重。最終,本文方法的解碼器從周圍環(huán)境中重建缺失部分,并重建出更加真實(shí)的高質(zhì)量點(diǎn)云。
圖3 重建點(diǎn)云的視覺(jué)比較Fig.3 Visual comparison of reconstructed point cloud
本文提出了一種新穎的端到端優(yōu)化的3D點(diǎn)云幾何信息有損壓縮模型,該點(diǎn)云壓縮模型具有較好的性能。我們認(rèn)為這是第一次將生成對(duì)抗網(wǎng)絡(luò)應(yīng)用于點(diǎn)云壓縮。本文模型解決了由于點(diǎn)云壓縮導(dǎo)致的大面積點(diǎn)云缺失問(wèn)題,使點(diǎn)云重建質(zhì)量更好。同時(shí),通過(guò)在解碼器中加入反卷積跳躍連接結(jié)構(gòu),本文在更低的碼率下重建了質(zhì)量更好的點(diǎn)云數(shù)據(jù)。實(shí)驗(yàn)結(jié)果表明,在低碼率條件下,該模型優(yōu)于MPEG G-PCC標(biāo)準(zhǔn)和Quach等方法。本文的工作可以推廣到動(dòng)態(tài)點(diǎn)云的壓縮工作中。利用3D卷積處理體素化點(diǎn)云會(huì)造成大量計(jì)算開(kāi)銷,下一步我們將使用稀疏3D卷積處理體素化點(diǎn)云降低計(jì)算開(kāi)銷。