Skip to content

Waqar53/diagnostic-copilot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

2 Commits
Β 
Β 

Repository files navigation

Diagnostic Copilot

AI-powered chest X-ray analysis for diagnostic decision support

Python PyTorch Next.js License

Diagnostic AI Copilot Demo

Medical Disclaimer

This system is for educational and research purposes only. It is NOT a substitute for professional medical diagnosis or treatment. All AI-generated analyses require review by qualified healthcare professionals.


What It Does

Diagnostic AI Copilot analyzes chest X-rays using deep learning and provides:

  • 14 Pathology Detection: Pneumonia, Pneumothorax, Cardiomegaly, Effusion, and more
  • Visual Explainability: Grad-CAM heatmaps showing exactly where AI focuses
  • Auto-Generated Reports: Structured radiology report drafts
  • Uncertainty Quantification: Confidence scores with uncertainty estimates
  • DICOM Support: Works with medical imaging formats

πŸš€ Quick Start

Prerequisites

  • Python 3.11+
  • Node.js 18+
  • Docker (optional)

Backend Setup

cd backend

# Create virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install dependencies
pip install -r requirements.txt

# Run the server
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000

Frontend Setup

cd frontend

# Install dependencies
npm install

# Run development server
npm run dev

With Docker

# Build and run all services
docker-compose up --build

# Access the app at http://localhost:3000
# API docs at http://localhost:8000/docs

πŸ—οΈ Architecture

diagnostic-copilot/
β”œβ”€β”€ backend/                 # FastAPI backend
β”‚   β”œβ”€β”€ app/
β”‚   β”‚   β”œβ”€β”€ ml/             # ML models (DenseNet121, Grad-CAM)
β”‚   β”‚   β”œβ”€β”€ routers/        # API endpoints
β”‚   β”‚   β”œβ”€β”€ schemas/        # Pydantic models
β”‚   β”‚   └── utils/          # Report generation, DICOM
β”‚   └── data/
β”‚       └── models/         # Model weights
β”‚
β”œβ”€β”€ frontend/                # Next.js frontend
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ app/           # Pages
β”‚   β”‚   β”œβ”€β”€ components/    # React components
β”‚   β”‚   └── lib/           # API client
β”‚
└── docker-compose.yml       # Container orchestration

Model Details

Architecture

  • Base Model: DenseNet121 pre-trained on ImageNet
  • Fine-tuning: ChestX-ray14 dataset (112,120 images)
  • Output: Multi-label classification (14 pathologies)
  • Explainability: Grad-CAM attention maps

Detectable Conditions

Condition Severity
Pneumothorax πŸ”΄ Severe
Mass πŸ”΄ Severe
Pneumonia 🟑 Moderate
Cardiomegaly 🟑 Moderate
Effusion 🟑 Moderate
Edema 🟑 Moderate
Consolidation 🟑 Moderate
Nodule 🟑 Moderate
Atelectasis 🟒 Mild
Infiltration 🟒 Mild
Emphysema 🟒 Mild
Fibrosis 🟒 Mild
Pleural Thickening 🟒 Mild
Hernia 🟒 Mild

πŸ“‘ API Reference

Analyze Image

POST /api/v1/analysis
Content-Type: multipart/form-data

# Parameters
- file: Image file (JPEG, PNG, DICOM)
- patient_age: Optional patient age
- patient_sex: Optional patient sex (M/F)
- clinical_history: Optional clinical notes
- generate_heatmaps: Generate Grad-CAM (default: true)

Get Report

GET /api/v1/analysis/{analysis_id}/report

Health Check

GET /health

Full API documentation available at /docs (Swagger UI).


Safety Features

  1. Medical Disclaimers: Every output includes clear disclaimers
  2. Uncertainty Quantification: Monte Carlo Dropout for confidence intervals
  3. Physician Review Required: Explicit flags for human oversight
  4. Audit Logging: Track all predictions for compliance
  5. Input Validation: Check image quality before analysis

Performance Metrics

Metric Value
Inference Time ~2-3 seconds (CPU)
Model Size ~30MB
Supported Formats JPEG, PNG, DICOM

Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing)
  3. Commit changes (git commit -m 'Add amazing feature')
  4. Push to branch (git push origin feature/amazing)
  5. Open a Pull Request

πŸ“„ License

MIT License - see LICENSE for details.


πŸ™ Acknowledgments

  • NIH ChestX-ray14 Dataset
  • Stanford CheXpert Dataset
  • PyTorch and torchvision teams
  • FastAPI and Next.js communities

Built with ❀️ for improving healthcare through AI

diagnostic-copilot

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published