Spatial Allocation for Budget-Adaptive Feed-Forward Gaussian Splatting

AllocSplat adapts reconstruction capacity with one model. (a,b) Reconstructions at 36.9K Gaussians with insets of the boxed region at 9.2K, beside all decoded Gaussian centers in 3D; (a) an input view, (b) a held-out view. (c) DL3DV-140, four posed inputs, no test-time optimization. AllocSplat and ZipSplat sweep capacity with fixed weights; the others sit at their evaluated capacities. At 36.9K Gaussians AllocSplat reaches 23.87 dB, 85.9% fewer Gaussians than TokenGS at 0.99 dB higher PSNR, and it leads ZipSplat by 0.29 to 1.65 dB at equal primitive counts.
Feed-forward 3D Gaussian Splatting reconstructs renderable scenes from a few posed images, but storing, streaming and rendering them require an output budget chosen by the application. At a smaller budget, each Gaussian must cover more of the scene, with its required extent depending on where the others lie in 3D. We introduce AllocSplat, which allocates capacity through spatial anchors and uses their local spacing to control Gaussian decoding. From the depth and features of a visual geometry model, a non-learned rule selects M anchors among back-projected candidates. Each anchor decodes K Gaussians whose offsets and scales are constrained by its distances to neighbouring selected anchors. Recomputing this local scale and the contextualized decode lets one set of weights serve a range of budgets, emitting exactly KM Gaussians per request. On DL3DV-140, the default budgets achieve higher PSNR and SSIM than the evaluated feed-forward baselines with fewer Gaussians at two, four and six input views. At four views, AllocSplat reaches 23.87 dB with 36.9K Gaussians, 0.99 dB above TokenGS with 85.9% fewer primitives, and 0.29–1.65 dB above ZipSplat at equal counts. Controlled comparisons show that the local scale improves on both fixed-footprint and global budget-scaling controls, and that bounding Gaussian offsets as well as sizes by it helps at every budget.
One checkpoint serves every budget: V = 2, 4 or 6 posed views, M = 256 to 1,944 anchors, K = 36 Gaussians per anchor.

AllocSplat. Sparse views and their known cameras pass through a visual geometry model (VGM), whose multi-layer features and depths are unprojected into a pool of 3D anchor candidates. A joint geometry–appearance farthest-point rule allocates exactly M of them, and the resulting density sets each anchor's local spatial scale ρi, so the same centers are decoded differently at different budgets. The Gaussian head emits K primitives per anchor, KM in total.
Sixteen DL3DV-140 test scenes, reconstructed from two, four or six posed views by one checkpoint without test-time optimization. Switch the budget to see the same weights emit 36M Gaussians; show the anchors or the groups and point at an anchor to see exactly which Gaussians it decodes and how far they may reach.
Drag to orbit · right-drag or Shift+drag to pan · scroll to zoom · number keys jump to an input view · in Groups, Both or Anchors, hover an anchor to preview it and click to pin it, Esc to clear. Views far from the inputs show regions no input observed.
The slider moves the camera along the input views. Overview lifts the camera above the scene, which shows the anchors in 3D.
One checkpoint renders the scene at each budget offered for the selected number of input views, along the same camera path through the input views and the space between them. Each tile is rendered at the 252×252 evaluation resolution.
Rendered with the rasterizer used for evaluation, at twice the evaluation resolution, along a spline through the input cameras. Click a video to open that scene in the viewer.
Each budget recomputes the local scales and the contextualized decode from the same checkpoint and outputs exactly 36M Gaussians. The PSNR shown is the mean over the scene's held-out frames on the common 252×252 evaluation canvas.
Anchors are selected by a non-learned farthest-point rule among the depth points back-projected from the inputs (324 candidates per view). The anchors of a smaller budget are the first M anchors of a larger one; “Replay allocation” adds them in that order.
An anchor's local scale ρ is the mean distance to its 8 nearest selected anchors, clamped to [0.03, 0.5]. Its 36 Gaussian centers are confined to a box of half-width ρ around it, and their scales are capped by ρ. Lower budgets space anchors farther apart, so ρ grows and each group covers more of the scene.
@article{allocsplat,
title = {AllocSplat: Spatial Allocation for Budget-Adaptive Feed-Forward Gaussian Splatting},
author = {Li, Hong and Yang, Yichen and Guo, Xianda and Li, Changbai and Xiao, Weiqing and Yang, Linlin and Peng, Yanlun and Zhang, Baochang},
journal = {arXiv preprint},
year = {2026},
note = {Coming soon}
}