This repository is the official implementation of HazyDet
You can download our HazyDet dataset from Baidu Netdisk or OneDrive.
For both training and inference, the following dataset structure is required:
HazyDet
|-- train
|-- clean images
|-- hazy images
|-- labels
|-- val
|-- clean images
|-- hazy images
|-- labels
|-- test
|-- clean images
|-- hazy images
|-- labels
|-- real world
|-- training
|-- testing
|-- labels
Note: Both passwords for BaiduYun and OneDrive is grok.
All the weight files in the model zoo can be accessed on Baidu Cloud and OneDrive.
| Model | Backbone | #Params (M) | GFLOPs | mAP on Synthetic |
mAP on Real-world |
Config | Weight |
|---|---|---|---|---|---|---|---|
| One Stage | |||||||
| YOLOv3 | Darknet53 | 61.63 | 20.19 | 35.0 | 30.7 | config | weight |
| GFL | ResNet50 | 32.26 | 198.65 | 36.8 | 32.5 | config | weight |
| YOLOX | CSPDarkNet | 8.94 | 13.32 | 42.3 | 35.4 | config | weight |
| FCOS | ResNet50 | 32.11 | 191.48 | 45.9 | 32.7 | config | weight |
| VFNet | ResNet50 | 32.71 | 184.32 | 49.5 | 35.6 | config | weight |
| ATTS | ResNet50 | 32.12 | 195.58 | 50.4 | 36.4 | config | weight |
| DDOD | ResNet50 | 32.20 | 173.05 | 50.7 | 37.1 | config | weight |
| TOOD | ResNet50 | 32.02 | 192.51 | 51.4 | 36.7 | config | weight |
| Two Stage | |||||||
| Faster RCNN | ResNet50 | 41.35 | 201.72 | 48.7 | 33.4 | config | weight |
| Libra RCNN | ResNet50 | 41.62 | 209.92 | 49.0 | 34.5 | config | weight |
| Grid RCNN | ResNet50 | 64.46 | 317.44 | 50.5 | 35.2 | config | weight |
| Cascade RCNN | ResNet50 | 69.15 | 230.40 | 51.6 | 37.2 | config | weight |
| End-to-End | |||||||
| Conditional DETR | ResNet50 | 43.55 | 91.47 | 30.5 | 25.8 | config | weight |
| DAB DETR | ResNet50 | 43.7 | 91.02 | 31.3 | 27.2 | config | weight |
| Deform DETR | ResNet50 | 40.01 | 203.11 | 51.5 | 36.9 | config | weight |
| DeCoDet | |||||||
| DeCoDet (Ours) | ResNet50 | 34.62 | 225.37 | 52.0 | 38.7 | config | weight |
| Type | Method | PSNR | SSIM | mAP on Test-set | mAP on RDDTS | Weight | |
| Baseline | Faster RCNN | - | - | 39.5 | 21.5 | weight | |
| Dehaze | GridDehaze | 12.66 | 0.713 | 38.9 (-0.6) | 19.6 (-1.9) | weight | |
| Dehaze | MixDehazeNet | 15.52 | 0.743 | 39.9 (+0.4) | 21.2 (-0.3) | weight | |
| Dehaze | DSANet | 19.01 | 0.751 | 40.8 (+1.3) | 22.4 (+0.9) | weight | |
| Dehaze | FFA | 19.25 | 0.798 | 41.2 (+1.7) | 22.0 (+0.5) | weight | |
| Dehaze | DehazeFormer | 17.53 | 0.802 | 42.5 (+3.0) | 21.9 (+0.4) | weight | |
| Dehaze | gUNet | 19.49 | 0.822 | 42.7 (+3.2) | 22.2 (+0.7) | weight | |
| Dehaze | C2PNet | 21.31 | 0.832 | 42.9 (+3.4) | 22.4 (+0.9) | weight | |
| Dehaze | DCP | 16.98 | 0.824 | 44.0 (+4.5) | 20.6 (-0.9) | weight | |
| Dehaze | RIDCP | 16.15 | 0.718 | 44.8 (+5.3) | 24.2 (+2.7) | weight |
$ conda create --name HazyDet python=3.9
$ source activate HazyDetconda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia# openmmlab codebases
pip install -U openmim --no-input
mim install mmengine "mmcv>=2.0.0" "mmdet>=3.0.0" "mmsegmentation>=1.0.0" "mmrotate>=1.0.0rc1" mmyolo "mmpretrain>=1.0.0rc7" 'mmagic'
# other dependencies
pip install -U ninja scikit-image --no-inputpython setup.py develop $ python tools/train_det.py configs/DeCoDet/DeCoDet_r50_1x_hazydet.py$ python tools/test.py configs/DeCoDet/DeCoDet_r50_1x_hazydet.py weights/fcos_DeCoDet_r50_1x_hazydet.pthWe released our checkpoint on HazyDet
The depth map required for training can be obtained through Metic3D. They can also be acquired through other depth estimation models.
If you want to use our depth data, please download it and place it in the specified path. For convenience in storage and viewing, we save relative depth in PNG image format and the maximum depth in text format, but we use absolute depth during training.

