Gaussian splatting has demonstrated excellent performance for view synthesis and scene reconstruction. The representation achieves photorealistic quality by optimizing the position, scale, color, and opacity of thousands to millions of 2D or 3D Gaussian primitives within a scene. However, since each Gaussian primitive encodes both appearance and geometry, these attributes are strongly coupled—thus, high-fidelity appearance modeling requires a large number of Gaussian primitives, even when the scene geometry is simple (e.g., for a textured planar surface). We propose to texture each 2D Gaussian primitive so that even a single Gaussian can be used to capture appearance details. By employing per-primitive texturing, our appearance representation is agnostic to the topology and complexity of the scene's geometry. We show that our approach, GStex, yields improved visual quality over prior work in texturing Gaussian splats. Furthermore, we demonstrate that our decoupling enables improved novel view synthesis performance compared to 2D Gaussian splatting when reducing the number of Gaussian primitives, and that GStex can be used for scene appearance editing and re-texturing.
We initialize the model using 2DGS and assign an RGB texture map to each 2D Gaussian primitive. We render a pixel by casting a ray into the scene; the ray passes through a textured 2D Gaussian that is oriented along and with position and normal. The color is given by mapping the intersection point to the uv coordinates of the Gaussian's texture map , bilinearly interpolating the resulting texture value, and adding it to the Gaussian's view-dependent color component (parameterized by spherical harmonics). The alpha value is given by evaluating the Gaussian function at the intersection point. Finally, we alpha composite the rendered colors of each intersected Gaussian, resulting in the rendered pixel color.
We show comparisons against Texture-GS (Xu et al., 2024) on the Blender synthetic dataset.
We demonstrate GStex's visual performance in a discrete LOD setting compared to 2DGS (Huang et al., 2024) across the Blender synthetic dataset and DTU dataset.
We show texture painting on a GStex model compared to on a 2DGS model.
We can also provide texturing with procedural textures. Below, we show side-by-side renders on two DTU scenes. The left panel is the original RGB render; the right panel is after retexturing.
=
@article{rong2024gstex,
title={GStex: Per-primitive texturing of 2D gaussian splatting for decoupled appearance and geometry modeling},
author={Rong, Victor and Chen, Jingxiang and Bahmani, Sherwin and Kutulakos, Kiriakos N and Lindell, David B},
journal={arXiv preprint arXiv:2409.12954},
year={2024}
}