ProGS: Towards Progressive Coding for 3D Gaussian Splatting
Authors: Zhiye Tang, Lingzhuo Liu, Shengjie Jiao, Qiudan Zhang, Junhui Hou, You Yang, Xu Wang
Organizations: College of Computer Science and Software Engineering, Shenzhen University, Shenzhen, 518060, China · Department of Computer Science, City University of Hong Kong, Kowloon, Hong Kong SAR, China · School of Electronic Information and Communications, Huazhong University of Science and Technology, Wuhan, 430074, China
Progressive transmission of 3D Gaussian Splatting (3DGS) requires each completed transmission stage to be decodable from received data and directly renderable. This work presents ProGS, a progressive codec that organizes anchor-based 3DGS as parent-closed octree prefixes. ProGS combines parent-causal entropy coding, level-balanced anchor growth, bounded multi-prefix training, and lightweight parent-anchor refinement to improve early-prefix quality without altering the complete-model rendering path. One fixed-λ training run yields five deployable rate--quality points from a single bitstream. Experiments on 17 scenes from three datasets evaluate rate--distortion performance, rendering speed, and transmission efficiency against progressive and single-rate baselines. On one representative scene per dataset, ProGS reaches a common quality target with 30.7 ∼ 60.7% fewer bytes than HAC-Rand and 22.6 ∼ 53.4% fewer bytes than HAC++-Rand. Across the three dataset averages, ProGS-LR uses 4.7 ∼ 6.1% fewer bytes than HAC-high while improving SSIM by 0.002 ∼ 0.041 and reducing LPIPS by 4.8 ∼ 51.2%. The parent-closed syntax makes every prefix causally decodable and directly renderable without future topology. ProGS-HR also yields higher endpoint SSIM and lower LPIPS than PCGS across all three dataset averages, and all five prefixes render in real time. Code is available at https://github.com/ZhiyeTang/ProGS-Official
Figures & tables
Fig. 1 : ProGS structures a 3D scene as a forest of layered octrees in a shared coordinate system. Each level-of-detail (LoD) l contains the cumulative octree layers through l . With context-based progressive coding, every completed level chunk yields a decodable and renderable model at a larger received payload.
Fig. 2 : Overview of ProGS. Stage 1 constructs parent-closed octree prefixes via level-balanced growth and multi-LoD supervision, then entropy-codes anchor attributes with priors and quantization steps predicted from the decoded parent prefix and current-level structure (AE/AD: arithmetic encoding/decoding). Stage 2 freezes the base codec and predicts bounded attribute residuals for selected low-LoD anchors from uniformly quantized per-anchor tokens, leaving octree positions and topology unchanged; refinement is bypassed at the complete LoD. A 2D quadtree is shown for clarity; the method uses octrees in 3D.
Fig. 3 : Geometric operations in level-balanced strict-octree growth (2D quadtree planes). (i) Same-level candidates are generated from Gaussian offsets. (ii) Finer-level candidates are quantized to child cells; a retained child without a parent queues the missing parent before materializing. (iii) Low-opacity anchors are pruned only as leaves, preserving parent closure. Prefix-aware scoring, closure penalties, and the top- Bl budget are specified in Algo. 1 .
Fig. 4 : Training schedule of ProGS. Stage 1 optimizes the main codec for 40,000 iterations: the parent-causal entropy context is enabled at iteration 100, and level-balanced growth with multi-LoD supervision runs from iteration 1,500 to 25,000, with growth alone paused from 13,000 to 14,000 per the HAC-style densification schedule. From iteration 25,000 the octree is frozen and only the full-LoD path is optimized. Stage 2 then freezes the base codec and refines low LoDs for 5,000 iterations.
Method / category
Rate organization
Cumulative chunks
Coded-prefix renderable
Parent-closed octree
Decoding dependency
Reference representations
Single endpoint
No
No
No
–
General single-rate compression
Independent models
No
No
N/R
Method-specific
Entropy-coded single-rate compression
Independent models
No
No
No
Non-progressive
Octree-GS (official) [ 13 ]
Adaptive LoDs
No
N/A
No
View-dependent LoD
Octree-GS-EC
Cumulative LoD groups
Yes
Yes
No
Decoded previous LoD
PCGS [ 14 ]
Cumulative levels
Yes
Yes
No
Previous layers
TABLE I: Rate organization of the compared methods. Independent rate points require separate optimization. Octree-GS-EC is the entropy-coded adaptation of Octree-GS used in this comparison. Here, a coded prefix denotes a serialized cumulative bitstream prefix; N/A for official Octree-GS indicates that it reports renderable LoDs rather than coded prefixes. N/R: property not uniformly reported within a group.
Mip-NeRF360 [ 41 ]
BungeeNeRF [ 42 ]
Tanks and Temples [ 43 ]
Method / point
PSNR ↑
SSIM ↑
LPIPS ↓
MB ↓
PSNR ↑
SSIM ↑
LPIPS ↓
MB ↓
PSNR ↑
SSIM ↑
LPIPS ↓
MB ↓
Reference representations
3DGS [ 1 ]
27.46
.812
.222
750.90
24.87
.841
.205
1616.00
23.69
.844
.178
431.00
Scaffold-GS [ 11 ]
27.50
.806
.252
253.90
26.62
.865
.241
183.00
23.96
.853
.177
86.50
General single-rate compression
SOG [ 19 ]
26.56
.791
.241
16.70
22.43
.708
.339
48.25
23.15
.828
.198
9.30
TABLE II : Main quantitative comparison. Top three entries per column are bold , underlined , and italic ; ties share a rank. Octree-GS-EC denotes the entropy-coded adaptation of Octree-GS used in this comparison. For Octree-GS-EC and ProGS, LR/HR use λ=0.004/0.0005 ; full denotes the highest available LoD. Official Octree-GS and the reference representations report checkpoint storage; PCGS, Octree-GS-EC, and ProGS report cumulative coded payloads; the remaining compression methods report complete-model storage.
Fig. 5 : Dataset-average SSIM–rate (top) and PSNR–rate (bottom). The two blue ProGS curves are the lv0–lv4 prefixes of fixed- λ LR and HR models. Solid lines connect only successive points of one cumulative progressive stream (ProGS, PCGS, and Octree-GS-EC); isolated markers are separately optimized single-rate models. Scenes with fewer occupied Octree-GS-EC levels retain their final LoD. Piecewise-linear Y-axes compress the sparse low-quality range; a kink on each left spine marks the scale transition, and ticks remain in the original units.
Fig. 6 : Progressive PSNR versus cumulative received size on matched scenes. ProGS and PCGS use native prefixes; Octree-GS-EC-LR uses decoded cumulative LoD groups. HAC/HAC++ random packetizations report ten-seed mean and standard deviation. The common target Qs∗ is defined over these five methods in Eq. ( 33 ). Piecewise-linear Y-axes compress the sparse low-quality range; a kink on each left spine marks the scale transition, and ticks remain in dB.
Fig. 7 : Progressive decoding on representative test views; each row shows the scene context, ground-truth detail, and the crop from lv0 to lv4. Red boxes mark the detail region; gray tags report full-view PSNR (dB) and cumulative size (MB).
Fig. 8 : Early-prefix comparison on representative test views. Each row shows the scene context and a shared detail crop. Red boxes mark the detail region; gray tags report full-view PSNR (dB) and cumulative size (MB). The selected PCGS prefixes/decoded Octree-GS-EC-LR LoDs are lv1/LoD2, lv2/LoD0, and lv2/LoD0, respectively.
Setting
Closure
Par. feat. context
Entropy context
Level balance
Prefix superv.
Refine.
Loose hierarchy
Loose
Off
Off
Off
Bounded
Off
Strict hierarchy
Strict
Off
Off
Off
Bounded
Off
w/o entropy context
Strict
On
Off
On
Bounded
On
w/o level balance
Strict
On
On
Off
Bounded
On
w/o refinement
Strict
On
On
On
Bounded
Off
w/o prefix supervision
Strict
On
On
On
None
On
TABLE III : Configurations of the ablation variants. Bounded prefix supervision runs from iteration 1,500 to 25,000; None uses only the full-model loss.
Setting
Base full size (MB)
Δ full size (MB)
lv0 prefix size (MB)
Δ lv0 size (MB)
Full PSNR (dB)
Δ full (dB)
lv0 PSNR (dB)
Δ lv0 (dB)
Loose hierarchy
16.718
−5.047
4.199
−6.636
26.696
−0.322
21.877
−2.277
Strict hierarchy
34.724
+12.958
19.482
+8.647
27.300
+0.282
22.696
−1.458
Full ProGS
21.766
–
10.747
–
27.018
–
24.154
–
w/o entropy context
22.412
+0.647
10.778
+0.032
27.054
+0.036
24.135
−0.019
w/o level balance
24.376
+2.610
13.470
+2.723
27.156
+0.138
24.321
+0.167
w/o refinement
21.766
0.000
10.365
−0.382
27.018
0.000
22.602
−1.552
TABLE IV : Absolute ablation results. Prefix size is cumulative through lv0 and includes the refinement side stream when enabled; base full size excludes it to isolate the Stage 1 codec. Each delta is the variant value minus Full ProGS.
Fig. 9 : Average parameter sensitivity. From left to right and top to bottom, the panels scan the growth threshold, level exponent, pruning threshold, balance ratio, minimum budget, multi-LoD schedule, token dimension, and active ratio; the two-setting quantization comparison is reported in Tab. V . The gray band marks the default setting in each panel; full denotes the base complete path and refined lv0–lv2 the frozen-base refined prefixes.
Fig. 10 : Average bitstream allocation. Left: shares by parameter type. Right: shares by progressive chunk. The refinement side stream follows lv0, is shown separately, and remains in subsequent cumulative payloads.
Metric
lv0
lv1
lv2
lv3
lv4
Size (MB)
10.75
15.42
18.23
20.62
22.15
Cum. Dec. (s)
12.84
19.62
23.72
26.68
28.49
FPS
120.2
114.1
105.0
143.6
149.8
TTFF50 (s)
14.57
22.10
26.65
29.99
32.04
Train: 3.35 h
Ref.: 0.382 MB; anchors: 555k
TABLE VI : Mean ProGS prefix efficiency on one RTX 4090 (17 scenes; λe=0.004 ). lv0–lv4 are the first through fifth renderable levels. TTFF50 represents the time-to-first-frame from the start of transmission over a 50-Mbps link.
While feed-forward 3D Gaussian splatting reconstructs renderable Gaussian primitives from sparse context views without per-scene optimization, existing pipelines do not provide a compact scene representation for storage or transmission. A natural solution is to apply existing 3DGS compression methods to the generated Gaussian primitives. However, this approach operates on the final irregular 3D representation and is decoupled from the internal feature-to-Gaussian generation process, which limits compression efficiency. To address this, we introduce CodecSplat, an ultra-compact latent coding framework for feed-forward 3D Gaussian splatting. CodecSplat first encodes an intermediate 2D Gaussian-generation feature into an entropy-coded scene bitstream. At the decoder, the latent feature is reconstructed and used to predict depth and Gaussian parameters, which are then mapped to 3D Gaussian primitives. By integrating compression into the feed-forward Gaussian generation pipeline, CodecSplat avoids inefficient compression over irregular 3D Gaussian primitives and allows the codec to exploit the structured intermediate feature representation. We instantiate CodecSplat on a feed-forward Gaussian splatting backbone with depth-guided multi-view feature refinement and a hierarchical learned feature codec. On DL3DV and RealEstate10K datasets, CodecSplat achieves 23.56-26.36 dB and 24.76-27.05 dB PSNR with only 20.00-107.77 KiB and 3.37-12.51 KiB per scene, respectively. This is roughly one order of magnitude smaller than compressing feed-forward generated Gaussian primitives, while preserving controllable rate-distortion behavior. Code is available at https://github.com/pengpeng-yu/CodecSplat.
Pengpeng Yu, Runqing Jiang, Qi Zhang +3
1Sun Yat-sen University, China · 3Pengcheng Laboratory, China · 2Peking University, China
3D Gaussian Splatting (3DGS) achieves high-quality novel view synthesis with real-time rendering, but its storage cost remains prohibitive for practical deployment. Existing post-training compression methods still rely on many coupled hyperparameters across pruning, transformation, quantization, and entropy coding, making it difficult to control the final compressed size and fully exploit the rate-distortion trade-off. We propose MesonGS++, a size-aware post-training codec for 3D Gaussian compression. On the codec side, MesonGS++ combines joint importance-based pruning, octree geometry coding, attribute transformation, selective vector quantization for higher-degree spherical harmonics, and group-wise mixed-precision quantization with entropy coding. On the configuration side, it treats the reserve ratio and bit-width allocation as the dominant rate-distortion knobs and jointly optimizes them under a target storage budget via discrete sampling and 0--1 integer linear programming. We further propose a linear size estimator and a CUDA parallel quantization operator to accelerate the hyperparameter searching process. Extensive experiments show that MesonGS++ achieves over 34× compression while preserving rendering fidelity, outperforming state-of-the-art post-training methods and accurately meeting target size budgets. Remarkably, without any training, MesonGS++ can even surpass the PSNR of vanilla 3DGS at a 20× compression rate on the Stump scene. Our code is available at https://github.com/mmlab-sigs/mesongs_plus
Shuzhao Xie, Junchen Ge, Weixiang Zhang +10
Shenzhen International Graduate School, Tsinghua University, Shenzhen, China · The Hong Kong University of Science and Technology, Hong Kong SAR, China · Harbin Institute of Technology, Shenzhen, China +6
Existing 3D Gaussian Splatting (3DGS) codecs report reconstruction quality after compression, and give users little control over the distortion of individual primitives. We present PLEDGE, a training-free, progressive, error-bounded codec that translates four user-declared tolerances into per-primitive quantization bounds: screen-space position, footprint deformation due to rotation and scale, view-dependent color, and opacity. The bounds apply throughout a declared camera domain, including previously unseen viewpoints. Position and opacity are bounded directly; footprint deformation is bounded under the rasterizer's affine projection model, and color is bounded over all viewing directions. PLEDGE organizes quantized residuals into a progressive bitstream with explicit error bounds for every valid prefix. Experiments across thirteen scenes verify all declared per-mechanism bounds and demonstrate competitive rate-distortion performance. The four tolerances incur substantially different rate costs, so users can spend rate where their application needs it.
Mingze Xia, Yuxiao Li, Baixi Sun +6
Oregon State University · The Ohio State University · Argonne National Laboratory +1