How cunchuanhuang/mdst-dehaze works
MDST-Dehaze is a PyTorch system for multi-domain haze generation and image dehazing. Users provide clear or hazy image domains, then run either C2H style transfer to create haze or H2C inference to restore clear images. Training proceeds through haze generation, teacher learning, and student learning, with stylized-image banking and perceptual/contrastive objectives. The sampled source confirms dataset loading, MDST/DSNet model structure, checkpoint-based inference, and PSNR/SSIM evaluation; some training-script wiring is inferred only from the README.
Components 19
User Entry Points
- C2H Inference
scripts/inference_C2H.py - H2C Inference
scripts/inference.py - Training Runner
scripts/run.sh
Data and Artifacts
- Image Datasets
datasets - Dataset Loader
myutils/dataloader.py - C2H Configuration
configs/configs_inferenceC2H.py - H2C Configuration
configs/configs_inferenceH2C.py - Result Artifacts
results
Haze Generation
- MDST Generator
models/MDSTNet.py - Haze Discriminators
models/Discriminator.py - C2H Training
scripts/train_C2H.py - Stylized Image Bank
results
Dehazing Models
- DSNet Dehazer
models/DSNet.py - Student Training
scripts/train_H2C.py - Teacher Training
scripts/train_C2C.py
Training and Evaluation
- VGG Features
models/VGG19.py - Training Losses
metrics/losses.py - PSNR SSIM
scripts/inference.py
Other components
- Researcher
Connections 27
- Researcher → C2H Inference: runs
- Researcher → H2C Inference: runs
- Researcher → Training Runner: starts
- C2H Inference → C2H Configuration: reads config
- C2H Inference → Dataset Loader: loads images
- Dataset Loader → Image Datasets: reads datasets
- C2H Inference → MDST Generator: runs model
- MDST Generator → Result Artifacts: writes haze
- H2C Inference → H2C Configuration: reads config
- H2C Inference → DSNet Dehazer: runs encoder
- H2C Inference → Result Artifacts: writes dehaze
- H2C Inference → PSNR SSIM: computes scores
- Training Runner → C2H Training: starts stage
- Training Runner → Teacher Training: starts stage
- Training Runner → Student Training: starts stage
- C2H Training → Dataset Loader: loads pairs
- C2H Training → MDST Generator: trains generator
- C2H Training → Haze Discriminators: trains adversaries
- C2H Training → Stylized Image Bank: stores stylized
- Teacher Training → DSNet Dehazer: trains teacher
- Teacher Training → Result Artifacts: saves weights
- Student Training → Dataset Loader: loads training data
- Student Training → Stylized Image Bank: reads styles
- Student Training → DSNet Dehazer: trains student
- Training Losses → VGG Features: extracts features
- Student Training → Training Losses: optimizes with
- C2H Training → Training Losses: optimizes with