Skip to content

sayannath/Blood-Cell-Detection-TFOD-2.0

Repository files navigation

Blood-Cell-Detection-TFOD-2.0

This project demonstrates the use of TensorFlow Object Detection API to automatically detect Red Blood Cells (RBCs), White Blood Cells (WBCs), and Platelets in each image taken via microscopic image readings.

The dataset used in this project was collected from here.

The project directory structure looks like:

.
├── BCCD-Dataset
│   ├── test
│   └── train
├── LICENSE
├── README.md
├── annotations
│   └── label_map.pbtxt
├── assets
│   └── example.jpeg
├── export_tflite_graph_tf2.py
├── exporter_main_v2.py
├── generate_tfrecord.py
├── model_main_tf2.py
├── models
│   └── pipeline.config
├── output_images
│   ├── four.png
│   ├── one.png
│   ├── three.png
│   └── two.png
└── results_graph
    ├── classification_loss.png
    └── total_loss.png

I followed the official TensorFlow Object Detection API documentation to kickstart the training process on Google Colab Pro using Cloud GPU to export the inference graph.

I used a EfficientDet D0 based architecture,since it yields a pretty good mAP@.50IOU of around 90.14%.
The results_graph folder contains the graph classification_loss during training.

Source: https://arxiv.org/abs/1911.09070

Sample Image

Inference

Here are some results after running the trained model on some test images:


Results


mAP@0.50IOU


Classification Loss

Further undertakings

  • Optimise the model using the OpenVINO toolkit
  • Convert the saved_model to .tflite
  • To be paired with microscopes used by pathologists

Acknowledgements

I am thankful to Sayak Paul for guiding me in this project.

Developed & Maintained by

👨 Sayan Nath