Metadata-Version: 2.4
Name: phenome
Version: 1.4.1
Summary: PhenoMe: dataset-agnostic phenotyping pipeline using deep learning embeddings
Author: Aitor González-Marfil
License: MIT
Project-URL: Homepage, https://github.com/AAitorG/PhenoMe
Project-URL: Repository, https://github.com/AAitorG/PhenoMe
Project-URL: Documentation, https://AAitorG.github.io/PhenoMe/
Project-URL: Bug Tracker, https://github.com/AAitorG/PhenoMe/issues
Project-URL: Changelog, https://github.com/AAitorG/PhenoMe/blob/main/CHANGELOG.md
Keywords: phenotyping,bioimaging,computer vision,deep learning,embeddings,microscopy,cell biology,image analysis,pytorch,drug discovery
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Science/Research
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
Classifier: Topic :: Scientific/Engineering :: Image Processing
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Typing :: Typed
Requires-Python: >=3.12
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: torch>=2.0.0
Requires-Dist: torchvision>=0.15.0
Requires-Dist: numpy>=1.24
Requires-Dist: pandas
Requires-Dist: matplotlib>=3.7
Requires-Dist: plotly
Requires-Dist: kaleido
Requires-Dist: scikit-learn
Requires-Dist: joblib
Requires-Dist: tqdm
Requires-Dist: opencv-python
Requires-Dist: tifffile
Requires-Dist: h5py
Requires-Dist: scipy
Requires-Dist: scikit-image>=0.26.0
Requires-Dist: ipywidgets
Requires-Dist: anywidget
Requires-Dist: pillow
Requires-Dist: umap-learn==0.5.12
Requires-Dist: nibabel<6,>=5.2.0
Requires-Dist: dcor==0.7
Requires-Dist: ipykernel>=6.29
Requires-Dist: jupyterlab>=4.0
Requires-Dist: jupyterlab_widgets>=3.0
Requires-Dist: nbformat>=5.9
Provides-Extra: full
Requires-Dist: pykeops==2.3; sys_platform != "win32" and extra == "full"
Requires-Dist: torchdr<0.6,>=0.1; extra == "full"
Provides-Extra: mcp
Requires-Dist: mcp>=2.0; extra == "mcp"
Provides-Extra: dev
Requires-Dist: codespell>=2.4; extra == "dev"
Requires-Dist: interrogate>=1.7.0; extra == "dev"
Requires-Dist: mypy>=1.19.1; extra == "dev"
Requires-Dist: pandas-stubs; extra == "dev"
Requires-Dist: pre-commit>=3.7; extra == "dev"
Requires-Dist: pytest>=8.0; extra == "dev"
Requires-Dist: ruff>=0.15.4; extra == "dev"
Requires-Dist: types-requests; extra == "dev"
Requires-Dist: types-setuptools; extra == "dev"
Dynamic: license-file

<div align="center">
  <img src="docs/assets/logo.png" alt="PhenoMe logo" width="360"/>

  <p>A modular, <b>dataset-agnostic</b> and <b>model-agnostic</b> framework for phenotyping analysis, combining deep learning embeddings and image properties.</p>
</div>

---

### 🗺️ Navigation

**[✨ Features](#-features)** | **[🚀 Quick Start](#-quick-start)** | **[📦 Installation](#-installation)** | **[📖 Documentation](https://AAitorG.github.io/PhenoMe/)** | **[📜 Citation](#-citation)**

---

## ✨ Features

- 🧠 **Model Agnostic**: Extract embeddings using DINOv2 or any custom vision model (PyTorch, TensorFlow, Keras, etc.) via the modular `ModelWrapper` interface.
- 📂 **Dataset Agnostic**: Works with any image dataset structure with customizable metadata extraction.
- 🛠️ **Analysis Toolkit**: Distance quantification, anomaly detection, property extraction, and correlation analysis.
- 📊 **Interactive Visualizations**: High-performance Plotly-based PCA, t-SNE, and UMAP plots.
- 📑 **Automated Reporting**: Generate comprehensive standalone HTML reports.

---

## 🚀 Quick Start

Try the no-code experience with the **[Interactive Quickstart Notebook](Notebooks/tutorials/01_interactive_quickstart.ipynb)** or launch instantly in Colab:

[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/AAitorG/PhenoMe/blob/main/Notebooks/tutorials/01_interactive_quickstart.ipynb)

---

## 📦 Installation

```bash
pip install phenome
```

PyTorch is included. An NVIDIA GPU is used when CUDA is available; the same install runs on CPU.

<details>
<summary><b>Conda or from source</b></summary>

Clone the repository, then create one environment for your hardware. These files pin the scientific stack and install this checkout.

```bash
git clone https://github.com/AAitorG/PhenoMe.git
cd PhenoMe
```

**GPU**
```bash
conda env create -f envs/environment-gpu.yml
conda activate phenome-gpu
```

**CPU**
```bash
conda env create -f envs/environment-cpu.yml
conda activate phenome-cpu
```
</details>

> **💡 Full instructions, verification, and troubleshooting:**
> See the [Getting started](https://AAitorG.github.io/PhenoMe/getting-started/) guide for install details, verification commands, and first-analysis walkthroughs.

---

## 📖 Documentation

**Explore the [Full Documentation](https://AAitorG.github.io/PhenoMe/)** for detailed guides, API references, and tutorials.

| Step | Resource |
| ---- | -------- |
| 1️⃣ **Install** | [Getting started](https://AAitorG.github.io/PhenoMe/getting-started/) |
| 2️⃣ **Set up your data** | [Data setup](https://AAitorG.github.io/PhenoMe/guides/data-setup/) · [Experiment details](https://AAitorG.github.io/PhenoMe/guides/experiment-details/) |
| 3️⃣ **Tutorials** | [Notebooks/tutorials/](Notebooks/tutorials/) |
| 4️⃣ **Examples** | [Notebooks/examples/](Notebooks/examples/) |

**Learn More:** [Core concepts](https://AAitorG.github.io/PhenoMe/concepts/) · [Workflows](https://AAitorG.github.io/PhenoMe/workflows/) · [FAQ](https://AAitorG.github.io/PhenoMe/faq/) · [Glossary](https://AAitorG.github.io/PhenoMe/glossary/)

---

## 📜 Citation

If you use PhenoMe in your research, please cite:

```bibtex
@software{phenome,
  author = {Aitor González-Marfil},
  title = {PhenoMe: Interactive AI framework for image representation analysis},
  year = {2026},
  url = {https://github.com/AAitorG/PhenoMe}
}
```
