This repository contains a PyTorch implementation of the Learning from Multiple Expert Annotators for Enhancing Anomaly Detection in Medical Image Analysis, submitted in Neurocomputing journal. The arXiv paper will be coming soon.
The overall architecture is about how to efficiently learn from annotations given by multiple radiologists. We firstly use Weighted Boxes Fusion to estimate the hidden ground truth with confidence scores. The estimated annotations and their scores are then used to train a deep learning object detector with a re-weighted loss function to localize
abnormal findings.
Run pip install -r requirements.txt
to install all the dependencies.
ckps_det/
- Checkpoints for trained models.data/
- Data folder. Contains the annotations for both simulated and the real-world VinDr-CXR datasetssource_det/
- Source code folder.yolov5/
- YOLOv5 source code from ultralytics.yolov5wl/
- YOLOv5 implemented with Experts Agreement Re-weighted Loss (EARL).
README.md
- This manual.LICENSE
- GNU General Public License v3.0.requirements.txt
- Required Python packages.
The datasets should be organized similar to
https://github.com/huyhieupham/learning-from-multiple-annotators/tree/main/data/VinCXR/labels_det
.
Follow the official YOLOv5 repo.
For questions and comments, feel free to contact Hieu Pham.
This work was supported by Smart Health Center at VinBigData JSC. The VinDr-CXR and many other publicly open datasets and computer aided diagnosis (CAD) systems can be found at VinDr.
Thanks to Glenn Jocher for his awesome YOLOv5 codebase.
Thanks to Solovyev et. al. for their Weighted Boxes Fusion paper and implementation code.
Thanks to Ross Wightman for his implementation of EfficientDet.
If you use our code in this repo for your research, please use the following BibTeX for citation:
BibTeX goes here