Yuxin Cheng · Binxiao Huang · Wenyong Zhou · Taiqiang Wu · Graziano Chesi · Zhengwu Liu · Ngai Wong*
Department of EEE, The University of Hong Kong, Pokfulum, Hong Kong SAR
*corresponding authors
Paper | arXiv | Project Page
3DGS (left) tends to exhibit blurring and needle-like artifacts, while ReAct-GS (right) effectively re-activates frozen primitives through proposed re-activation stategies to improve rendering quality.
ReAct-GS addresses a critical limitation in 3D Gaussian Splatting (3DGS): the problem of frozen primitives that become stuck in suboptimal configurations during training, causing over-reconstruction artifacts. Our method introduces targeted reactivation strategies: 1) Importance-aware Densification (IAD); 2) Density-guided Clone (DGC); 3)Needle-shape Perturbance (NSP), a novel approach that periodically identifies and re-activates forzen Gaussian primitives, enabling them to contribute more effectively to scene reconstruction.
We recommend using conda to create a virtual environment:
conda create -n reactgs python=3.9 -y
conda activate reactgsInstall PyTorch with CUDA support:
conda install pytorch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 pytorch-cuda=11.8 -c pytorch -c nvidiaInstall required Python packages:
pip install -r requirements.txtBuild the differential Gaussian rasterization and simple-knn modules:
cd submodules
pip install -e ./diff-gaussian-rasterization
pip install -e ./simple-knnThe dataset preparation is aligned with 3DGS
- Download the Mip-NeRF 360 dataset from the official website
- Combine the scenes into the following structure:
ReActGS-main
|---data_ms360
|---bicycle
| |---images
| | |---<image 0>
| | |---<image 1>
| | |---...
| |---images_2
| |---images_4
| |---images_8
| |---sparse
| |---0
| |---cameras.bin
| |---images.bin
| |---points3D.bin
|---bonsai
|---counter
|---garden
|---kitchen
|---room
|---stump
|---...
To train on a single scene:
python train.py -s <path_to_scene> -m <output_path> -r 4(outdoor scenes)/2(indoor scenes)--nsp_interval: Interval for applying Needle Shape Perturbance--nsp_util: Training iteration until which NSP is applied--iterations: Total number of training iterations--densify_from_iter: Start densification from this iteration--densify_until_iter: Stop densification at this iteration--densification_interval: Interval for densification operations
# Train with custom NSP parameters
python train.py -s data/flowers -m output/flowers -r 4
python train.py -s data/bonsai -m output/bonsai -r 2python render.py -m <path_to_trained_model>--iteration: Specify which checkpoint to use (default: -1, uses the final model)--skip_train: Skip rendering training views--skip_test: Skip rendering test views
python metrics.py -m <path_to_trained_model>ReAct-GS is fully compatible with the original 3DGS viewer since our rendering process and point cloud storage format are identical to 3DGS.
Please refer to the 3DGS Interactive Viewers documentation for detailed instructions on using the real-time viewer.
If you find ReAct-GS useful for your research, please cite our paper:
@inproceedings{10.1145/3746027.3754958,
author = {Yuxin Cheng, Binxiao Huang, Taiqiang Wu, Wenyong Zhou, Zhengwu Liu, Graziano Chesi, Ngai Wong},
title = {Re-Activate Frozen Primitive for 3D Gaussian Splatting},
year = {2025},
isbn = {9798400720352},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
url = {https://doi.org/10.1145/3746027.3754958},
doi = {10.1145/3746027.3754958},
booktitle = {Proceedings of the 33nd ACM International Conference on Multimedia},
location = {Dublin, Ireland},
series = {MM '25'}
}This project is inspired and built upon 3D Gaussian Splatting, Pixel-GS and Abs-GS. We thank the authors for their excellent work and for making their code publicly available. Please follow the license terms of 3DGS when using this code.
This project is licensed under the same terms as the original 3D Gaussian Splatting. See LICENSE.md for details. This software is free for non-commercial, research and evaluation use.

