Skip to content
Ahmed-3411Public

About

Automated White Blood Cell (WBC) classification from microscopic images using Convolutional Neural Networks (CNN) with 95% test accuracy. Ideal for medical imaging and AI research.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Latest commit

 

History

42 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

WBC-Net: A Convolutional Neural Network for Automated White Blood Cell Classification

Paper Python TensorFlow Keras OpenCV

WBC-Net is a deep convolutional neural network for automated classification of white blood cells.
Neutrophils, Lymphocytes, Monocytes, Eosinophils, and Basophils.


Abstract

White blood cell (WBC) analysis is crucial for early detection of hematological disorders.
This repository provides the implementation of WBC-Net, a convolutional neural network designed for robust and scalable WBC classification from microscopic images.

The pipeline includes advanced image preprocessing (resizing, normalization, and augmentation), a four-stage CNN with batch normalization and dropout regularization, and performance optimization techniques such as early stopping, learning-rate scheduling, and model checkpointing.
Extensive experiments on a public WBC dataset show that WBC-Net achieves strong performance across multiple metrics, making it suitable for real-time clinical decision-support applications.


Table of Contents

  1. Project Overview
  2. Dataset
  3. Methodology
  4. Experiments & Results
  5. Repository Structure
  6. Installation
  7. Usage
  8. Citation
  9. Contact

1. Project Overview

The goal of WBC-Net is to automate multi-class WBC classification using a deep learning pipeline optimized for accuracy, robustness, and reproducibility.

Key Contributions

  • A 4-stage CNN architecture tailored for WBC morphology
  • Comprehensive preprocessing pipeline including resizing, augmentation, and normalization
  • Training optimization: batch normalization, dropout, learning-rate scheduling
  • Evaluation suite: confusion matrix, ROC curves, per-class metrics
  • GPU-optimized implementation

2. Dataset

  • Source:
    White Blood Cells Dataset

  • Classes (5):

    • Neutrophils
    • Eosinophils
    • Basophils
    • Monocytes
    • Lymphocytes
  • Total Images: 14,514

    • Training: 8,140 (80%)
    • Validation: 2,035 (20%)
    • Test: 4,339

3. Methodology

3.1 Preprocessing Pipeline

  • Resize images to 128×128
  • Pixel normalization
  • Augmentation: rotations, flips
  • Addressing class imbalance

3.2 CNN Architecture

Input (128x128x3)
├── Conv Block 1 (64 filters) → BatchNorm → MaxPool → Dropout(0.25)
├── Conv Block 2 (128 filters) → BatchNorm → MaxPool → Dropout(0.25)
├── Conv Block 3 (256 filters) → BatchNorm → MaxPool → Dropout(0.25)
├── Conv Block 4 (512 filters) → BatchNorm → MaxPool → Dropout(0.25)
├── Dense(1024) → Dropout(0.5)
├── Dense(512) → Dropout(0.5)
└── Output(5) → Softmax

4. Experiments & Results

Confusion Matrix

Confusion Matrix

Class Distribution

Training Distribution

Sample Prediction

Prediction

Visualizing Model Predictions

Predictions


5. Repository Structure

WBC-Net/
 ├── models/
 ├── figures/
 ├── data/
 ├── notebooks/
 ├── scripts/
 └── README.md

Installation

git clone https://github.com/YOUR_USERNAME/WBC-Net.git
cd WBC-Net
pip install -r requirements.txt

Usage

Training

python train.py --dataset data/

Evaluation

python evaluate.py --weights best_model.h5

Citation

If you use WBC-Net in your research, please cite:

Ahmed T. Mersal et al.   
WBC-Net: A Convolutional Neural Network for Automated White Blood Cell Classification.  
TechRxiv, 2025.  
DOI: 10.36227/techrxiv.176282158.83951263/v1


Contact

Ahmed Talaat
📧 ahmed.mmt3411@gmail.com

About

Automated White Blood Cell (WBC) classification from microscopic images using Convolutional Neural Networks (CNN) with 95% test accuracy. Ideal for medical imaging and AI research.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages