Skip to content

BIT-Vision/SpikeDiffusion

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Noise-Modeled Diffusion Models for Low-Light Spike Image Restoration (ICCV 2025, Highlight🌟)

Ruonan Liu, Lin Zhu, Xijie Xiang, Lizhi Wang, Hua Huang

🎯Introduction

This study proposes a novel approach for restoring low-light spike images using noise-modeled diffusion models. By establishing a noise-embedded spike imaging model under low light, we model the forward diffusion process as the degradation of spike images with proportional and residual terms and incorporate deterministic and non-deterministic components with reverse shifting, enabling the model to capture the distinctive spike noise structure. Region mask images, dark current maps, and spike density values guide restoration by indicating degradation areas, deterministic parameters, and noise intensity. Experimental results demonstrate that our method significantly outperforms existing spike-based reconstruction and diffusion-based image restoration methods.

Framework

✨News

  • [2025-09-23] Code & dataset released.
  • [2025-07-15] Paper accepted by ICCV 2025 (Highlight).

⚙️Reqirements

  • python=3.10
  • pytorch=2.4.0
  • tensorboard
  • lpips
  • pyiqa

You can quickly set up the environment using the following commands:

conda create -n spike_diffusion python=3.10 -y
conda activate spike_diffusion
pip install torch==2.4.0 torchvision==0.19.0 torchaudio==2.4.0 --index-url https://download.pytorch.org/whl/cu118
pip install -r requirements.txt

🗂️Datasets

DF2K/
  |- train/
      |- DIV2K_train_HR/
          |- 0001.png
          |- ...
          |- 0784.png
      |- Flickr2K_HR/
          |- 000001.png
          |- ...
          |- 002634.png
simulated_spike_data/
  |- val/  # validation during training
      |- 000.npy
      |- ...
      |- 287.npy
  |- val_paper/  # evaluation during inference for better visualization
      |- 00_competition.npy
      |- ...
      |- 09_police.npy
real_low_light_spike_data/
  |- data/  # real-world low-light spike data
      |- 01_soft_toy.npy
      |- ...
      |- 10_calendar.npy
  |- params/  # for calculating FPN parameters
      |- 0.npy
      |- 198.npy
      |- 423.npy
  • Path mapping in configuration file params.json
"dataset": {
	"dataset_train_root": "DF2K/train",
	"dataset_val_root": "simulated_spike_data/val",  // or "simulated_spike_data/val_paper"
	"dataset_real_root": "real_low_light_spike_data/data",
	"dark_data_path": "real_low_light_spike_data/params/0.npy",
	"medium_data_path": "real_low_light_spike_data/params/198.npy",
	"light_data_path": "real_low_light_spike_data/params/423.npy",
}

🚀Inference

python test.py --config config/params.json

🤖Training

python train.py --config config/params.json

💌Acknowledgement

This project is built upon RSIR, ResShift, DDPM. Thanks for their help and inspiration.

About

Noise-Modeled Diffusion Models for Low-Light Spike Image Restoration (ICCV 2025 Highlight)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages