README.md
September 10, 2025 ยท View on GitHub
TOGS: Gaussian Splatting with Temporal Opacity Offset for Real-Time 4D DSA Rendering
arXiv Paper
Shuai Zhang 1, Huangxuan Zhao 3, Zhenghong Zhou 1, Guanjun Wu 2,Chuansheng Zheng 3,
Xinggang Wang 1,Wenyu Liu 1,๐ง
1 School of Electronic Information and Communications, Huazhong University of Science and Technology
2 School of Computer Science &Technology, Huazhong University of Science and Technology
3 Department of Radiology, Union Hospital, Tongji Medical College, Huazhong University of Science and Technology
(๐ง corresponding author)
Abstract

We propose TOGS, a Gaussian splatting method with opacity offset over time, which can effectively improve the rendering quality and speed of 4D DSA. We introduce an opacity offset table for each Gaussian to model the temporal variations in the radiance of the contrast agent. Additionally, we introduced a Smooth loss term in the loss function to mitigate overfitting issues that may arise in the model when dealing with sparse view scenarios. This model achieves stateof-the-art reconstruction quality under the same number of training views. Additionally, it enables real-time rendering while maintaining low storage overhead.
Installation
git clone https://github.com/hustvl/TOGS.git
conda create -n togs
conda activate togs
pip install -r requirements.txt
python ./submodules/diff-gaussian-rasterization/setup.py install
python ./submodules/simple-knn-main/setup.py install
Training
Dataset preparation
Organize medical data into a form similar to D-NeRF.
- Use the
./processing_data/get_image.pyscript to extract image and angle information from DICOM data. - Use the
./processing_data/get_json.pyscript to get transforms_train.json and transforms_test.json.
โโโ data
โ | medicaldata
โ โโโ imgname1.png
โ โโโ imgname2.png
โ โโโ imgname3.png
โ โโโ imgname4.png
โ โโโ ...
โ โโโ transforms_train.json
โ โโโ transforms_test.json
Training
python train.py -s ./data/medicaldata --eval --yaml_file /data5/zhangshuai/TOGS/arguments/30.yaml
usage: python train.py -s [data path] --eval --yaml_file [configfile path] (30: Number of training views)
Rendering
python render.py -m ./output/30_2024-08-23_13:53:56
usage: python render.py -m [model save path]
Evaluation
python metrics.py -m ./output/60_2024-01-01_21:36:19
usage: python metrics.py -m [model save path]
Visualization
Number of training views: 30, testing views: 103, PSNR: 31.80.

Visualizing 3D point clouds:
Acknowledgement
This project is built upon 3DGS.
Citation
@ARTICLE{11020652,
author={Zhang, Shuai and Zhao, Huangxuan and Zhou, Zhenghong and Wu, Guanjun and Zheng, Chuansheng and Wang, Xinggang and Liu, Wenyu},
journal={IEEE Journal of Biomedical and Health Informatics},
title={TOGS: Gaussian Splatting With Temporal Opacity Offset for Real-Time 4D DSA Rendering},
year={2025},
volume={29},
number={9},
pages={6793-6805},
keywords={Rendering (computer graphics);Three-dimensional displays;Biomedical imaging;Training;Neural radiance field;Image reconstruction;Real-time systems;Contrast agents;Deformation;Shape;Gaussian Splatting;4D DSA novel view synthesis;NeRF;medical imaging;real-time rendering},
doi={10.1109/JBHI.2025.3575613}}