mAIcrobe: a napari plugin for microbial image analysis.
mAIcrobe is a comprehensive napari plugin that facilitates image analysis workflows of bacterial cells. Combining state-of-the-art segmentation approaches, morphological analysis and adaptable classification models into a napari-plugin, mAIcrobe aims to deliver a user-friendly interface that helps inexperienced users perform image analysis tasks regardless of the bacterial species and microscopy modality. Built using Python 3.10 and 3.11 and tested on Windows, and macOS.
You can read more about mAIcrobe in our preprint.
- Automated Cell Segmentation: StarDist2D, Cellpose, and custom U-Net models. Several pre-trained models also included.
- Deep learning classification: 6 pre-trained CNN models for S. aureus cell cycle determination, a pre-trained model for E. coli antibiotic phenotyping plus support for custom models.
- Morphological Analysis: Comprehensive measurements using scikit-image regionprops
- Interactive Filtering: Real-time cell selection based on computed statistics
- Colocalization Analysis: Multi-channel fluorescence quantification
- Automated Reports: HTML reports with visualizations and statistics
- Data Export: CSV export for downstream statistical analysis
Standard Installation:
We recommend using an environment manager like conda to handle dependencies and assure reproducibility.
Regardless of environment, you can install via pip in Python 3.10 or 3.11. This should handle all dependencies and might take a couple of minutes depending on your internet connection.
pip install napari-mAIcrobeDevelopment Installation:
git clone https://github.com/HenriquesLab/mAIcrobe.git
cd mAIcrobe
pip install -e .🎯 Detailed Installation Instructions →
- Thresholding: Isodata and Local Average methods with watershed
- StarDist2D: custom models (pretrained available for S. aureus)
- Cellpose: cyto3 model
- Custom U-Net Models: custom models (pretrained available for S. aureus, B. subtilis, and S. pneumoniae)
- Pre-trained Models: S. aureus cell cycle and E. coli antibiotic phenotyping
- Custom Model Support: Build your training dataset in napari with out custom widget, train using our jupyter notebook and load your own TensorFlow models,
- Shape Analysis: Area, perimeter, eccentricity
- Intensity Measurements: Fluorescence statistics
- Custom Measurements: Septum detection, colocalization, and more
| Guide | Purpose |
|---|---|
| 🚀 Getting Started | Installation to first analysis using sample data |
| 🔬 Segmentation Guide | Explore the available segmentation methods |
| 📊 Cell Analysis | Explore complete analysis workflow and check the metrics measured |
| 🧠 Cell Classification Guide | Explore the available classification models |
| Tutorial | Purpose |
|---|---|
| 🎨 Basic Workflow | Step-by-step guide with a simple example (<5 minutes) |
| 🛠️ Generate Training Data | Create annotated datasets for custom model training |
For programmatic usage: | ⚙️ API Reference
Explore advanced functionality with included notebooks:
- Cell Cycle Model Training: To train custom classification models
- StarDist Segmentation: To retrain a StarDist segmentation model
- 🐛 Issues - Report bugs, request features
- 📚 napari hub - Plugin ecosystem
We welcome contributions! Whether it's:
- 🐛 Bug reports and fixes
- ✨ New segmentation algorithms
- 📖 Documentation improvements
- 🧪 Additional test datasets
- 🤖 New AI models for classification
Quick contributor setup:
git clone https://github.com/HenriquesLab/mAIcrobe.git
cd mAIcrobe
pip install -e .[testing]
pre-commit installTesting:
# Run tests
pytest -v
# Run tests with coverage
pytest --cov=napari_mAIcrobe
# Run tests across Python versions
toxDistributed under the terms of the BSD-3 license, mAIcrobe is free and open source software.
mAIcrobe is developed in the Henriques and Pinho Labs with contributions from the napari and scientific Python communities.
Built with:
- napari - Multi-dimensional image viewer
- TensorFlow - Machine learning framework
- StarDist - Object detection with star-convex shapes
- Cellpose - Generalist cell segmentation
- scikit-image - Image processing library

