https://github.com/theashishmavii/blood-cell-detection-using-yolov10
YOLOv10 model for detecting and classifying blood cells (RBCs, WBCs, platelets) from the BCCD dataset. Includes training, preprocessing, and evaluation with metrics like F1 score.
https://github.com/theashishmavii/blood-cell-detection-using-yolov10
bccd github jupyter-notebook machine-learning object-detection python yolov10
Last synced: 3 months ago
JSON representation
YOLOv10 model for detecting and classifying blood cells (RBCs, WBCs, platelets) from the BCCD dataset. Includes training, preprocessing, and evaluation with metrics like F1 score.
- Host: GitHub
- URL: https://github.com/theashishmavii/blood-cell-detection-using-yolov10
- Owner: theashishmavii
- Created: 2025-03-17T10:59:49.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2025-03-17T12:38:09.000Z (7 months ago)
- Last Synced: 2025-07-09T13:06:37.525Z (3 months ago)
- Topics: bccd, github, jupyter-notebook, machine-learning, object-detection, python, yolov10
- Language: Jupyter Notebook
- Homepage:
- Size: 36.1 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# π **Blood Cell Detection using YOLOv10**
## π **Project Overview**
This project aims to build an **Object Detection Model** to identify and classify different types of blood cells using the **YOLOv10** model. The model is trained on the **BCCD (Blood Cell Count Dataset)**, which includes images of various blood cells like red blood cells (RBCs), white blood cells (WBCs), and platelets.The goal of this project is to automate the detection of blood cells, which is crucial for medical applications like automated blood cell counting, disease detection, and more. Using YOLOv10, a state-of-the-art real-time object detection model, the project demonstrates how deep learning can be applied to healthcare tasks.
---
## π‘ **Motivation**
Automating blood cell detection can significantly enhance the speed and accuracy of medical diagnoses. Manual blood cell counting is a labor-intensive and error-prone task. By leveraging computer vision techniques, we can build an efficient and automated solution that assists healthcare professionals in diagnosing diseases, evaluating blood health, and monitoring medical conditions.This project highlights the application of deep learning in healthcare and aims to contribute to the ongoing efforts in **medical automation**.
---
## βοΈ **Technologies Used**
- **YOLOv10**: For real-time object detection and fine-tuning on the BCCD dataset.
- **PyTorch**: Framework used for building, training, and fine-tuning the model.
- **Ultralytics YOLOv10**: The YOLOv10 model implementation used in this project for training and inference. More info: [Ultralytics YOLOv10](https://github.com/ultralytics/yolov5).
- **OpenCV**: Used for image processing and augmentations.
- **NumPy & Pandas**: For data manipulation and processing.
- **Matplotlib**: For visualizing model performance and evaluation metrics.
- **BCCD Dataset**: Blood Cell Count Dataset used for training the model.---
## π **How It Works**
1. **Data Preprocessing**:
- The dataset is preprocessed with augmentation techniques like **rotation**, **cropping**, and **scaling** to improve the modelβs generalization and performance.
2. **Model Training**:
- YOLOv10 is fine-tuned on the BCCD dataset. During training, the model learns to detect different classes of blood cells, such as red blood cells, white blood cells, and platelets.
3. **Model Inference**:
- After training, the model is used for inference on unseen images. The output includes the bounding boxes around detected blood cells, their class labels, and confidence scores.
4. **Evaluation**:
- The performance of the model is evaluated using metrics like **precision**, **recall**, and **F1 score**. The evaluation is visualized through a **precision-recall curve** and F1 score metrics.---
## π **Folder Structure**
π¦ **Blood Cell Detection using YOLOv10**
βββ π **models/** # Folder containing the saved YOLOv10 model
βββ π **weights/** # Folder containing the saved YOLOv10 model weights
βββ π **runs/detect/** # Folder containing the results of the model
β βββ π **train** # Containing the results like F1-score, PR curve, etc.
β βββ π **train2** # Containing the jpg files of annotated images
β βββ π **train3** # Containing the best results like train folder
βββ π **dataset/** # Folder containing the dataset
β βββ π **files** # Containing the text files with addresses for splitting into train, test, and validation
β βββ π **images** # Containing the jpg files
βββ π **main_collab_code.py** # Main code by which models are trained and implemented on Google Colab
βββ π **inference.py** # Code for running inference with the trained model
βββ π **preprocessing.py** # Image preprocessing and augmentation code
βββ π **predict.py** # For prediction on image
βββ π **README.md** # Project documentation---
## π Results:


---
## π Evalution Parameters Results:








