SGS: Structured Sparse Gaussian Streaming for Efficient Free-Viewpoint Video Reconstruction on Edge-IoT Devices
Organizations: Department of Computing, The Hong Kong Polytechnic University, Hong Kong SAR, China · Department of Civil and Environmental Engineering, The Hong Kong Polytechnic University, Hong Kong SAR, China
Abstract
Streaming reconstruction of Free-Viewpoint Videos (FVVs) supports immersive Internet of Things (IoT) services, such as telepresence and digital twin visualization. Existing methods suffer from high per-frame optimization time and large storage footprints, limiting deployment on resource-constrained Edge-IoT devices. To address these challenges, we propose Structured Sparse Gaussian Streaming (SGS), an FVV reconstruction framework that exploits structure-aware temporal sparsity to selectively update Gaussian residuals, enabling efficient streaming without compromising visual fidelity. In the spatial domain, a streaming octree hierarchically organizes Gaussian residuals, capturing spatial correlations that guide residual updates. In the temporal domain, a structured gating mechanism, comprising hierarchical feature propagation (HFP) and Gumbel-Sigmoid sampling, converts hierarchical dynamic cues into sparse residual update decisions under differentiable optimization. A multi-level discrete scheme is further adopted to provide fine-grained control over residual updates while preserving intricate dynamic details. Extensive experiments across consumer GPUs, industrial edge IoT devices, and a physical telepresence testbed demonstrate that SGS consistently reduces per-frame optimization time and storage footprint while maintaining competitive visual quality. Compared with QUEEN, SGS reduces per-frame optimization time by 59% and storage costs by 85% on an RTX 4090 GPU. On the Jetson AGX Orin, SGS delivers the highest rendering throughput (60+ FPS) and the lowest energy consumption among the evaluated methods, demonstrating its potential for deployment in resource-constrained systems.
Figures & tables
| Methods | PSNR (dB) / SSIM | #Gaussians (k) | Storage (MB) | Train (Sec) | Render (FPS) | |||||||
| Coffee Martini | Cook Spinach | Cut Beef | Flame Salmon | Flame Steak | Sear Steak | Average | ||||||
| Offline | K-Planes † [ 40 ] | 29.99 / 0.925 | 32.60 / 0.942 | 31.82 / 0.943 | 30.44 / 0.924 | 32.38 / 0.957 | 32.52 / 0.955 | 31.63 / 0.941 | - | 1.04 | 21.6 | 0.3 |
| NeRFPlayer † [ 11 ] | 31.53 / 0.951 | 30.56 / 0.929 | 29.35 / 0.908 | 31.65 / 0.940 | 31.93 / 0.950 | 29.13 / 0.908 | 30.69 / 0.931 | - | 17.1 | 72.0 | 0.05 | |
| 4DGaussians [ 26 ] | 30.10 / 0.935 | 31.15 / 0.958 | 32.60 / 0.951 | 30.21 / 0.934 | 33.49 / 0.961 | 32.64 / 0.961 | 31.70 / 0.950 | 192 | 0.29 | 7.92 | 23 | |
| Grid4D [ 28 ] | 28.69 / 0.919 | 32.90 / 0.957 | 33.61 / 0.958 | 29.86 / 0.930 | 32.98 / 0.963 | 33.49 / 0.965 | 31.92 / 0.949 | 202 | 0.16 | 16.4 | 127 | |
| STG [ 23 ] | 28.61 / 0.916 | 33.18 / 0.952 | 33.52 / 0.954 | 29.48 / 0.918 | 33.64 / 0.960 | 33.89 / 0.961 | 32.05 / 0.944 | 434 | 0.67 | 15.1 | 149 | |
| Methods | Meet Room Dataset | ENeRF Outdoor Dataset | |||||||||||||
| PSNR (dB) | SSIM | LPIPS | #Gaussians (k) | Storage (MB) | Train (Sec) | Render (FPS) | PSNR (dB) | SSIM | LPIPS | #Gaussians (k) | Storage (MB) | Train (Sec) | Render (FPS) | ||
| Online | 3DGStream [ 15 ] | 29.30 | 0.942 | 0.188 | 185 | 4.10 | 4.77 | 260 | 25.91 | 0.856 | 0.129 | 2182 | 8.77 | 12.96 | 117 |
| 4DGC [ 19 ] | 30.41 | 0.947 | 0.180 | 208 | 0.77 | 24.52 | 155 | 24.52 | 0.845 | 0.135 | 1275 | 0.93 | 37.71 | 102 | |
| HiCoM [ 16 ] | 29.57 | 0.944 | 0.182 | 152 | 0.39 | 3.91 | 377 | 22.12 | 0.749 | 0.280 | 761 | 1.74 | 4.43 | 385 | |
| QUEEN-s [ 12 ] | 31.95 | 0.960 | 0.159 | 133 | 0.23 | 2.92 | 414 | 26.21 | 0.839 | 0.177 | 282 | 0.95 | 2.94 | 411 | |
| QUEEN-l [ 12 ] | 32.21 | 0.962 | 0.152 | 135 | 0.29 | 3.51 | 397 | 26.13 | 0.843 | 0.154 | 354 | 1.32 | 3.82 | 358 | |
| Incremental Design | PSNR (dB) | #Gaussians (k) | #Active Gates | Storage (MB) | Train (Sec) | Render (FPS) |
| Baseline | 29.61 | 412 | 410k | 3.09 | 13.7 | 199 |
| + STE | 31.89 | 352 | 107k | 2.37 | 12.9 | 221 |
| + Sparse Reg. | 32.25 | 331 | 16k | 1.10 | 12.7 | 234 |
| + Stream. Octree | 32.71 | 101 | 2.4k | 0.29 | 4.24 | 485 |
| + HFP (S²GS-full) | 32.76 | 101 | 679 | 0.11 | 4.12 | 482 |
| Structure | Sparsity | MeetRoom Dataset | ENeRF Outdoor Dataset | ||||||||||||
| Stream. Octree | HFP | STE | Sparse Reg. | PSNR (dB) | #Gaussians (k) | #Active Gates | Storage (MB) | Train (Sec) | Render (FPS) | PSNR (dB) | #Gaussians (k) | #Active Gates | Storage (MB) | Train (Sec) | Render (FPS) |
| - | - | - | - | 31.69 | 129 | 129k | 0.67 | 2.86 | 383 | 25.12 | 439 | 398k | 4.17 | 4.03 | 285 |
| - | - | 31.86 | 127 | 13k | 0.22 | 2.73 | 387 | 25.69 | 382 | 51k | 1.41 | 3.66 | 299 | ||
| - | - | 32.33 | 64 | 17k | 0.38 | 2.18 | 496 | 25.80 | 138 | 39k | 1.77 | 2.45 | 532 | ||
| 32.46 | 64 | 401 | 0.08 | 1.96 | 513 | 25.94 | 138 | 1.9k | 0.20 | 2.28 | 541 | ||||
| Configuration | PSNR (dB) | LPIPS | #Active Gates | Storage (MB) | Train (Sec) | Render (FPS) |
| HFP (S²GS-full) | 25.94 | 0.124 | 1.9k | 0.20 | 2.28 | 541 |
| FT, | 25.82 | 0.128 | 1.8k | 0.19 | 2.35 | 537 |
| FT, | 25.72 | 0.133 | 1.6k | 0.18 | 2.39 | 526 |
| FT, | 25.33 | 0.141 | 1.2k | 0.15 | 2.37 | 539 |
| FT, | 25.12 | 0.150 | 707 | 0.13 | 2.32 | 544 |
| Configuration | PSNR (dB) | SSIM | #Active Gates | Storage (MB) | Train (Sec) | Render (FPS) |
| STE: Binary | 29.85 | 0.934 | 2 | 0.06 | 4.05 | 478 |
| STE: ML (S²GS-full) | 32.76 | 0.952 | 679 | 0.11 | 4.12 | 482 |
| Resolution | Methods | Quality & Efficiency | Resource Consumption | ||||||||||
| PSNR (dB) | SSIM | LPIPS | #Gaussians (k) | Storage (MB) | Train (Sec) | Render (FPS) | CPU (%) | GPU MEM (GB) | RAM (GB) | Power (W) | Energy (J) | ||
| 1/4 | 3DGStream [ 15 ] | 33.21 | 0.953 | 0.095 | 386 | 8.21 | 63.28 | 21.22 | 38.23 | 1.82 | 0.78 | 14.56 | 921.36 |
| HiCoM [ 16 ] | 31.25 | 0.950 | 0.085 | 194 | 0.49 | 45.61 | 24.81 | 208.0 | 1.53 | 1.34 | 13.53 | 617.10 | |
| QUEEN-s [ 12 ] | 32.40 | 0.955 | 0.085 | 260 | 0.60 | 32.27 | 32.35 | 25.86 | 1.91 | 1.29 | 14.29 | 461.14 | |
| S²GS-edge (Ours) | 33.07 | 0.958 | 0.083 | 82 | 0.14 | 18.61 | 49.73 | 41.98 | 1.42 | 1.32 | 11.21 | 208.62 | |
| 1/8 | 3DGStream [ 15 ] | 32.48 | 0.952 | 0.063 | 397 | 8.17 | 38.90 | 28.77 | 40.64 | 1.71 | 0.74 | 15.55 | 604.90 |
Appendix figures & tables17 assets
Supplementary material from the paper’s appendix.
Appendix
| Dataset | Scene | Root Resolution | Log Base | ||
| N3DV | Coffee Martini | 2.0 | 0.01 | 0.01 | |
| N3DV | Cook Spinach | 2.0 | 0.01 | 0.01 | |
| N3DV | Cut Roasted Beef | 2.0 | 0.01 | 0.01 | |
| N3DV | Flame Salmon | 2.0 | 0.01 | 0.01 | |
| N3DV | Flame Steak | 2.0 | 0.01 | 0.01 | |
| N3DV | Sear Steak | 2.0 | 0.01 | 0.01 |
| Streaming Octree | N3DV Dataset | MeetRoom Dataset | |||||||||
| HRA | ESQ | PSNR (dB) | #Gaussians (k) | #Active Gates | Storage (MB) | Train (Sec) | PSNR (dB) | #Gaussians (k) | #Active Gates | Storage (MB) | Train (Sec) |
| - | - | 32.25 | 331 | 16k | 1.10 | 12.7 | 31.89 | 127 | 13k | 0.22 | 2.83 |
| - | 32.74 | 122 | 2.7k | 0.34 | 4.58 | 32.40 | 71 | 2.4k | 0.16 | 2.26 | |
| 32.71 | 101 | 2.4k | 0.29 | 4.24 | 32.44 | 64 | 2.2k | 0.14 | 2.02 | ||
| Resolution | PSNR (dB) | #Gaussians (k) | #Active Gates | Storage (MB) | Train (Sec) | Render (FPS) |
| 32.39 | 35 | 154 | 0.05 | 1.97 | 526 | |
| 32.46 | 64 | 401 | 0.08 | 1.96 | 513 | |
| 32.59 | 89 | 828 | 0.11 | 2.02 | 505 | |
| 32.41 | 102 | 999 | 0.12 | 2.04 | 498 | |
| 32.36 | 106 | 974 | 0.12 | 2.00 | 501 |
| Log Base | PSNR (dB) | #Gaussians (k) | #Active Gates | Storage (MB) | Train (Sec) | Render (FPS) |
| 32.23 | 122 | 1.2k | 0.16 | 2.18 | 495 | |
| 32.46 | 64 | 401 | 0.08 | 1.96 | 513 | |
| 32.29 | 48 | 218 | 0.06 | 2.02 | 501 | |
| 32.33 | 36 | 165 | 0.05 | 1.95 | 519 | |
| 32.20 | 28 | 117 | 0.04 | 1.91 | 525 |
| N3DV Dataset | ENeRF Outdoor Dataset | |||||||||
| Configuration | PSNR (dB) | SSIM | #Active Gates | Storage (MB) | Train (Sec) | PSNR (dB) | SSIM | #Active Gates | Storage (MB) | Train (Sec) |
| S 2 GS-full (Ours) | 32.76 | 0.952 | 679 | 0.11 | 4.12 | 25.94 | 0.863 | 1.9k | 0.20 | 2.28 |
| w/o Prog. Train. | 32.68 | 0.951 | 755 | 0.14 | 4.15 | 26.02 | 0.861 | 2.1k | 0.24 | 2.33 |
| First-Frame Metric | Streaming Performance | ||||||
| Epochs | PSNR (dB) | Train (Sec) | PSNR (dB) | LPIPS | Storage (MB) | Train (Sec) | Render (FPS) |
| 50 | 26.92 | 9.15 | 29.72 | 0.148 | 0.16 | 3.64 | 475 |
| 100 | 28.18 | 19.75 | 29.80 | 0.139 | 0.16 | 3.65 | 460 |
| 150 | 28.93 | 27.68 | 29.83 | 0.135 | 0.16 | 3.70 | 462 |
| 200 | 29.26 | 37.99 | 29.95 | 0.134 | 0.17 | 3.74 | 477 |
| 250 | 28.96 | 46.69 | 30.07 | 0.133 | 0.17 | 3.82 | 469 |
| First-Frame Metric | Streaming Performance | ||||||
| Noise | PSNR (dB) | Train (Sec) | PSNR (dB) | LPIPS | Storage (MB) | Train (Sec) | Render (FPS) |
| 33.54 | 29.91 | 33.96 | 0.134 | 0.07 | 4.20 | 498 | |
| 33.30 | 30.22 | 33.74 | 0.135 | 0.07 | 4.23 | 492 | |
| 30.89 | 29.84 | 33.55 | 0.138 | 0.07 | 4.21 | 489 | |
| 28.93 | 28.86 | 33.06 | 0.144 | 0.07 | 4.26 | 495 | |
| Confidence Estimator | PSNR (dB) | SSIM | LPIPS | #Active Gates | Storage (MB) | Train (Sec) |
| Uniform Random | 32.33 | 0.964 | 0.147 | 801 | 0.12 | 2.09 |
| Constant-One | 32.20 | 0.963 | 0.143 | 12k | 0.63 | 2.48 |
| Constant-Zero | 25.13 | 0.919 | 0.201 | 0 | 0.04 | 1.91 |
| Min-Max VGD | 26.03 | 0.923 | 0.197 | 1 | 0.04 | 1.92 |
| Robust VGD (Ours) | 32.46 | 0.964 | 0.147 | 401 | 0.08 | 1.96 |
| Illumination Gain | PSNR (dB) | SSIM | LPIPS | #Active Gates | Storage (MB) | Train (Sec) |
| 34.12 | 0.958 | 0.133 | 744 | 0.07 | 4.10 | |
| 34.28 | 0.958 | 0.132 | 713 | 0.07 | 4.11 | |
| 34.41 | 0.958 | 0.128 | 753 | 0.08 | 4.16 | |
| 34.98 | 0.958 | 0.123 | 777 | 0.08 | 4.21 |
| Injected Noise | PSNR (dB) | SSIM | LPIPS | #Active Gates | Storage (MB) | Train (Sec) |
| 30.26 | 0.939 | 0.109 | 235 | 0.18 | 4.17 | |
| 30.18 | 0.939 | 0.109 | 181 | 0.16 | 4.19 | |
| 30.25 | 0.939 | 0.110 | 179 | 0.16 | 4.19 | |
| 30.19 | 0.939 | 0.108 | 182 | 0.16 | 4.18 | |
| 30.13 | 0.938 | 0.109 | 189 | 0.16 | 4.20 |
| PSNR (dB) | LPIPS | #Active Gates | Storage (MB) | Train (Sec) | Render (FPS) | ||
| Effect of for Gate Decision | |||||||
| 0 | 0.01 | 25.60 | 0.122 | 12k | 0.79 | 2.44 | 533 |
| 0.01 | 0.01 | 25.94 | 0.124 | 1.9k | 0.20 | 2.28 | 541 |
| 0.02 | 0.01 | 25.84 | 0.127 | 1.2k | 0.15 | 2.23 | 539 |
| 0.03 | 0.01 | 25.78 | 0.128 | 952 | 0.14 | 2.23 | 547 |
| Effect of for Offset Magnitude | |||||||
| Scenes | Methods | Quality & Efficiency | Resource Consumption | ||||||||||
| PSNR (dB) | SSIM | LPIPS | #Gaussians (k) | Storage (MB) | Train (Sec) | Render (FPS) | CPU (%) | GPU MEM (GB) | RAM (GB) | Power (W) | Energy (J) | ||
| Install RAM | 3DGStream [ 15 ] | 19.38 | 0.700 | 0.301 | 695 | 8.47 | 52.84 | 16.24 | 31.46 | 2.60 | 0.72 | 15.91 | 840.96 |
| HiCoM [ 16 ] | 17.50 | 0.659 | 0.289 | 293 | 0.70 | 22.54 | 36.06 | 175.7 | 1.41 | 1.09 | 13.62 | 306.88 | |
| QUEEN-s [ 12 ] | 18.61 | 0.758 | 0.183 | 290 | 0.89 | 7.83 | 48.13 | 45.55 | 1.49 | 1.15 | 15.81 | 123.77 | |
| S²GS-edge (Ours) | 19.04 | 0.792 | 0.133 | 88 | 0.26 | 4.60 | 59.37 | 65.63 | 1.09 | 1.20 | 12.91 | 59.38 | |
| Pick Blocks | 3DGStream [ 15 ] | 17.85 | 0.697 | 0.324 | 518 | 8.43 | 50.52 | 21.63 | 35.43 | 2.08 | 0.75 | 15.20 | 767.90 |
Streaming 3D Reconstruction
Streaming 3D reconstruction incrementally builds geometrically consistent scene maps from incoming images or video under tight memory and latency limits.
See all 99 papers