{"id":31661359,"url":"https://github.com/henriqueslab/maicrobe","last_synced_at":"2025-10-07T18:22:58.364Z","repository":{"id":307509437,"uuid":"943370388","full_name":"HenriquesLab/mAIcrobe","owner":"HenriquesLab","description":null,"archived":false,"fork":false,"pushed_at":"2025-09-23T15:04:19.000Z","size":107099,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-09-23T17:18:15.105Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/HenriquesLab.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-03-05T15:46:01.000Z","updated_at":"2025-09-23T15:38:28.000Z","dependencies_parsed_at":"2025-09-23T17:28:40.900Z","dependency_job_id":null,"html_url":"https://github.com/HenriquesLab/mAIcrobe","commit_stats":null,"previous_names":["henriqueslab/napari-maicrobe","henriqueslab/maicrobe"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/HenriquesLab/mAIcrobe","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HenriquesLab%2FmAIcrobe","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HenriquesLab%2FmAIcrobe/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HenriquesLab%2FmAIcrobe/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HenriquesLab%2FmAIcrobe/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/HenriquesLab","download_url":"https://codeload.github.com/HenriquesLab/mAIcrobe/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HenriquesLab%2FmAIcrobe/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278821862,"owners_count":26051998,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-07T02:00:06.786Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-10-07T18:22:53.282Z","updated_at":"2025-10-07T18:22:58.357Z","avatar_url":"https://github.com/HenriquesLab.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![License BSD-3](https://img.shields.io/pypi/l/napari-mAIcrobe.svg?color=green)](https://github.com/HenriquesLab/mAIcrobe/raw/main/LICENSE)\n[![PyPI](https://img.shields.io/pypi/v/napari-mAIcrobe.svg?color=green)](https://pypi.org/project/napari-mAIcrobe)\n[![Python Version](https://img.shields.io/pypi/pyversions/napari-mAIcrobe.svg?color=green)](https://python.org)\n[![tests](https://github.com/HenriquesLab/mAIcrobe/actions/workflows/test_oncall.yml/badge.svg)](https://github.com/HenriquesLab/mAIcrobe/actions/workflows/test_oncall.yml)\n[![napari hub](https://img.shields.io/endpoint?url=https://api.napari-hub.org/shields/napari-mAIcrobe)](https://napari-hub.org/plugins/napari-mAIcrobe)\n\n# mAIcrobe\n\n\u003cimg src=\"docs/logowhitebg.png\" align=\"right\" width=\"200\" style=\"margin-left: 20px;\"/\u003e\n\n**mAIcrobe: a napari plugin for microbial image analysis.**\n\nmAIcrobe 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.\n\n## ✨ Why mAIcrobe?\n\n### 🔬 **For Microbiologists**\n- **Automated Cell Segmentation**: StarDist2D, Cellpose, and custom U-Net models\n- **Deep learning classification**: 6 pre-trained CNN models for *S. aureus* cell cycle determination plus support for custom models\n- **Morphological Analysis**: Comprehensive measurements using scikit-image regionprops\n- **Interactive Filtering**: Real-time cell selection based on computed statistics\n\n### 📊 **For Quantitative Research**\n- **Colocalization Analysis**: Multi-channel fluorescence quantification\n- **Automated Reports**: HTML reports with visualizations and statistics\n- **Data Export**: CSV export for downstream statistical analysis\n\n\n## 🚀 Installation\n\n**Standard Installation:**\n\n```bash\npip install napari-mAIcrobe\n```\n\n**Development Installation:**\n\n```bash\ngit clone https://github.com/HenriquesLab/mAIcrobe.git\ncd mAIcrobe\npip install -e .\n```\n\n\n**🎯 [Complete Tutorial →](docs/tutorials/basic-workflow.md)**\n\n## 🏆 Key Features\n\n### 🎨 **Cell Segmentation**\n- **Thresholding**: Isodata and Local Average methods with watershed\n- **StarDist2D**: custom models\n- **Cellpose**: cyto3 model\n- **Custom U-Net Models**: custom models\n\n### 🧠 **Single cell Classification**\n- **Pre-trained Models**: 6 specialized models for cell cycle determination in *S. aureus*:\n  - DNA+Membrane (Epifluorescence \u0026 SIM)\n  - DNA-only (Epifluorescence \u0026 SIM)\n  - Membrane-only (Epifluorescence \u0026 SIM)\n- **Custom Model Support**: Load your own TensorFlow models\n\n### 📊 **Comprehensive Morphometry**\n- **Shape Analysis**: Area, perimeter, eccentricity\n- **Intensity Measurements**: Fluorescence statistics\n- **Custom Measurements**: Septum detection\n\n## 📖 Documentation\n\n| Guide | Purpose |\n|-------|---------|\n| **[🚀 Getting Started](docs/user-guide/getting-started.md)** | Installation to first analysis |\n| **[🔬 Segmentation Guide](docs/user-guide/segmentation-guide.md)** | Choose the right segmentation method |\n| **[📊 Cell Analysis](docs/user-guide/cell-analysis.md)** | Complete analysis workflows |\n| **[🧠 Cell Classification Guide](docs/user-guide/cell-classification.md)** | Cell cycle classification setup |\n| **[⚙️ API Reference](docs/api/api-reference.md)** | Programmatic usage |\n\n## 🎯 Analysis Workflow\n\n### 📄 **Single Image Analysis**\n1. **Load Images**: Phase contrast and/or fluorescence\n2. **Segment Cells**: Choose segmentation algorithm and parameters\n3. **Analyze Cells**: Extract morphological and intensity features and choose classification model\n4. **Filter Results**: Interactive filtering of cell populations\n5. **Generate Report**: Create comprehensive analysis report\n\n\n## 🧪 Sample Data\n\nThe plugin includes test datasets for method validation:\n\n- **Phase Contrast**: _S. aureus_ cells in exponential growth\n- **Membrane Stain**: NileRed fluorescence imaging\n- **DNA Stain**: Hoechst nuclear labeling\n\nAccess via napari: `File \u003e Open Sample \u003e napari-mAIcrobe`\n\n## 🏃‍♀️ Example Analysis\n\n**Input Data:**\n- Phase contrast image\n- Membrane fluorescence\n- DNA fluorescence\n\n**Analysis Pipeline:**\n1. **Segmentation**: Isodata or CellPose's cyto3 identifies individual cells in the phase contrast image\n2. **Morphology**: Calculate morphological and intensity measurements\n3. **Classification**: Cell cycle phase determination using pre-trained CNN model\n4. **Quality Control**: Interactive filtering of analysis results. Select subpopulations based on size, intensity, or classification\n5. **Report Generation**: HTML output\n\n\n## 📚 Available Jupyter Notebooks\n\nExplore advanced functionality with included notebooks:\n\n- **[Cell Cycle Model Training](notebooks/napari_mAIcrobe_cellcyclemodel.ipynb)**: Train custom classification models\n- **[StarDist Segmentation](notebooks/StarDistSegmentationTraining.ipynb)**: Retrain a StarDist segmentation model\n\n## 🤝 Community\n\n- **🐛 [Issues](https://github.com/HenriquesLab/mAIcrobe/issues)** - Report bugs, request features\n- **📚 [napari hub](https://napari-hub.org/plugins/napari-mAIcrobe)** - Plugin ecosystem\n\n## 🏗️ Contributing\n\nWe welcome contributions! Whether it's:\n\n- 🐛 Bug reports and fixes\n- ✨ New segmentation algorithms\n- 📖 Documentation improvements\n- 🧪 Additional test datasets\n- 🤖 New AI models for classification\n\n**Quick contributor setup:**\n```bash\ngit clone https://github.com/HenriquesLab/mAIcrobe.git\ncd mAIcrobe\npip install -e .[testing]\npre-commit install\n```\n\n**Testing:**\n```bash\n# Run tests\npytest -v\n\n# Run tests with coverage\npytest --cov=napari_mAIcrobe\n\n# Run tests across Python versions\ntox\n```\n\n**[📋 Full Contributing Guide →](CONTRIBUTING.md)**\n\n\n## 📜 License\n\nDistributed under the terms of the [BSD-3](http://opensource.org/licenses/BSD-3-Clause) license, mAIcrobe is free and open source software.\n\n## 🙏 Acknowledgments\n\nmAIcrobe is developed in the [Henriques](https://henriqueslab.org) and [Pinho](https://www.itqb.unl.pt/research/biology/bacterial-cell-biology) Labs with contributions from the napari and scientific Python communities.\n\n**Built with:**\n- [napari](https://napari.org/) - Multi-dimensional image viewer\n- [TensorFlow](https://tensorflow.org/) - Machine learning framework\n- [StarDist](https://github.com/stardist/stardist) - Object detection with star-convex shapes\n- [Cellpose](https://github.com/MouseLand/cellpose) - Generalist cell segmentation\n- [scikit-image](https://scikit-image.org/) - Image processing library\n\n---\n\n\u003cdiv align=\"center\"\u003e\n\n**🔬 From the [Henriques](https://henriqueslab.org) and [Pinho](https://www.itqb.unl.pt/research/biology/bacterial-cell-biology) Labs**\n\n*\"Advancing microbiology through AI-powered image analysis.\"*\n\n**[🚀 Get Started →](docs/user-guide/getting-started.md)** | **[📚 Learn More →](docs/user-guide/segmentation-guide.md)** | **[⚙️ API Docs →](docs/api/api-reference.md)**\n\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhenriqueslab%2Fmaicrobe","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhenriqueslab%2Fmaicrobe","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhenriqueslab%2Fmaicrobe/lists"}