English | 简体中文
This is the official implemtentation of Foggy Insulator Network in the paper FINet: An Insulator Dataset and Detection Benchmark Based on Synthetic Fog and Improved YOLOv5
Fig.1 Graphical Abstract of FINet.
-
This project realizes and optimizes the fogging algorithm based on the dark channel prior, and the codes are availalbe now.
-
We provides an datasets for Insulator Detection with about 13,700 images.
-
The improved network SE-YOLOv5 realizes a more robust model in both sunny and foggy scenarios.
For FINet
, the HAI framework is used to provide simple dataset download, training, evaluation, inference and deployment functions. To install hai
, run:
pip install hepai
hai --version # check the version
-
git clone https://github.com/zhangzhengde0225/FINet.git cd FINet pip install -r requirements.txt # install dependencies
-
To check the dataset by drawing labels into images, run:
python scripts/check_dataset.py [-s --source DATASET_PATH] # [optional] Default: data/SFID_demo
-
To train a model, run:
python train.py [-s --source DATASET_PATH] # [optional] Default: data/SFID_demo [-w --weights WEIGHTS_PATH] # [optional] Default: None [--epochs EPOCHS] # [optional] Default: 3 [--batch-size BATCH_SIZE] # [optional] Default: 32 [--device CPU/GPU] # [optional] Default: GPU:0 [--img-size IMAGE_SIZE] # [optional] Default: 640
After training, the model will be saved in
runs/exp/weights/last.pt
. You can train the model with your own dataset by modifying the--source
parameter. -
We released the
Synthetic Foggy Insulator Dataset (SFID)
andTrained logs & weights
, download them by following command:python download.py [SFID|logs] # Choice: SFID, logs [--save-dor SAVE_DIR] # [optional] Default: current directory
After
SFID
downloading, the dataset will be saved indata/SFID
.After
logs
downloading, three trained logs and weights will be saved inruns/xx
, and theruns/se_m_ep99_fogged/weights/best.pt
will be used for evaluation by default.For other download ways and the previous UPID and CPLID datasets, please refer to docs/dataset.md.
-
After training or download trained weights, you can evaluate the model by running:
# evaluate the model on the testset python evaluate.py [--source DATASET_PATH] # [optional] Default: data/SFID [--weights TRAINED_WEIGHTS] # [optional] Deafult: runs/se_m_ep99_fogged/weights/best.pt
-
The
HAI
provides simple way to deploy theFINet
via docker and provides remote inferenceAPI
, which can be used to detect insulators in images or videos.# Deploy the FINet in docker hai deploy --name FINet --image zhangzhengde0225/finet:latest python inference.py [--source IMAGE_PATH] # [optional] Default: data/SFID_demo/images/test/00400.jpg [--weights TRAINED_WEIGHTS] # [optional] Deafult: runs/se_m_ep99_fogged/weights/best.pt [--device CPU/GPU] # [optional] Default: GPU:0 [--img-size IMAGE_SIZE] # [optional] Default: 640
-
You can use the
synthetic_fog.py
to generate foggy images. The fogging algorithm is based on the dark channel prior described in our paper, and the codes are availalbe now.python scripts/synthetic_fog.py [-s --source INPUT_PATH] # [optional] Default: data/SFID_demo/images/train/001040.jpg [--save-dir OUTPUT_PATH] # [optional] Default: None, display it [--speed_up NEED_SPEED_UP] # Default: False
Detailed tutorials are available in docs/tutorial.md.
The FINet is authored by Zheng-De Zhang*, Bo Zhang,*, Zhi-Cai Lan, Hai-Chun Liu, Dong-Ying Li, Ling Pei and Wen-Xian Yu.
Currently, it is maintained by Zheng-De Zhang (zdzhang@ihep.ac.cn) and Bo Zhang (zhangbo20@sjtu.edu.cn)
If you have any questions, please new an issue or feel free contact us by email, thank you for your attention!
Please Star this project and Cite this paper if its helpful to you .
@article{FINet,
Title={FINet: An Insulator Dataset and Detection Benchmark Based on Synthetic Fog and Improved YOLOv5},
Author={Zheng-De Zhang, Bo Zhang, Zhi-Cai Lan, Hai-Chun Liu, Dong-Ying Li, Ling Pei and Wen-Xian Yu},
Journal={IEEE T INSTRUM MEAS},
DOI={10.1109/TIM.2022.3194909},
Year={2022},
Pages={1-8},
ISSN={0018-9456},
Online_ISSN={1557-9662},
}
THe FINet and it's datasets is freely available for non-commercial use, and may be redistributed under these conditions. For commercial queries, please drop an e-mail to zdzhang@ihep.a.cn, we will send the detail agreement to you.
- Function: Inference
- Fixbug: download: no hai/configs/urls.json [Fixed]
- Fixbug: invalid cv2.imshow in docker
- Fixbug: Synthetic fog invalid in docker