Metadata-Version: 2.4
Name: cuvis-ai
Version: 0.5.0
Summary: Collaborative Framework for Hyperspectral Intelligence
Author-email: "Cubert GmbH, Ulm, Germany" <cuvis.ai@cubert-gmbh.com>
License-Expression: Apache-2.0
Project-URL: Homepage, https://www.cubert-hyperspectral.com/
Project-URL: Repository, https://github.com/cubert-hyperspectral/cuvis-ai
Project-URL: Documentation, https://cubert-hyperspectral.github.io/cuvis.ai/
Project-URL: Changelog, https://github.com/cubert-hyperspectral/cuvis-ai/releases
Project-URL: Issues, https://github.com/cubert-hyperspectral/cuvis-ai/issues
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Scientific/Engineering :: Image Processing
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Typing :: Typed
Classifier: Operating System :: OS Independent
Requires-Python: <3.12,>=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: cuvis>=3.5.0
Requires-Dist: cuvis-ai-core>=0.3.4
Requires-Dist: cuvis-ai-schemas[full]>=0.3.0
Requires-Dist: pydantic<3.0.0,>=2.0.0
Requires-Dist: defusedxml
Requires-Dist: imantics
Requires-Dist: ftfy>=6.1.1
Requires-Dist: markupsafe!=3.0.2
Requires-Dist: matplotlib
Requires-Dist: opencv-python-headless
Requires-Dist: gitpython>=3.1.40
Requires-Dist: pyyaml
Requires-Dist: scikit-image
Requires-Dist: scikit-learn
Requires-Dist: tensorboard
Requires-Dist: setuptools<81
Requires-Dist: torch>=2.9.1
Requires-Dist: torchvision
Requires-Dist: torchmetrics
Requires-Dist: pytorch-lightning
Requires-Dist: tzdata; sys_platform == "win32"
Requires-Dist: loguru>=0.7.3
Requires-Dist: packaging>=23.0
Requires-Dist: omegaconf>=2.3.0
Requires-Dist: hydra-core
Requires-Dist: dotenv>=0.9.9
Requires-Dist: regex>=2023.12.25
Requires-Dist: huggingface-hub>=0.20.0
Requires-Dist: transformers>=4.36.0
Requires-Dist: hf-xet>=1.2.0
Provides-Extra: docs
Requires-Dist: mkdocs>=1.5.0; extra == "docs"
Requires-Dist: mkdocs-material>=9.5.0; extra == "docs"
Requires-Dist: mkdocstrings[python]>=0.24.0; extra == "docs"
Requires-Dist: mkdocs-gen-files>=0.5.0; extra == "docs"
Requires-Dist: mkdocs-literate-nav>=0.6.0; extra == "docs"
Requires-Dist: opencv-python-headless; extra == "docs"
Requires-Dist: pytest-check-links>=0.9.0; extra == "docs"
Requires-Dist: pytest-md-report>=0.3.0; extra == "docs"
Requires-Dist: mike>=1.1.0; extra == "docs"
Provides-Extra: dev
Requires-Dist: ipykernel; extra == "dev"
Requires-Dist: jupyterlab; extra == "dev"
Requires-Dist: ruff; extra == "dev"
Requires-Dist: pytest; extra == "dev"
Requires-Dist: pytest-cov; extra == "dev"
Requires-Dist: ipympl>=0.9.8; extra == "dev"
Requires-Dist: ipdb>=0.13.13; extra == "dev"
Requires-Dist: psutil; extra == "dev"
Requires-Dist: interrogate>=1.5.0; extra == "dev"
Requires-Dist: twine>=6.2.0; extra == "dev"
Requires-Dist: pip-audit>=2.7.0; extra == "dev"
Requires-Dist: bandit[toml]>=1.7.0; extra == "dev"
Requires-Dist: detect-secrets>=1.4.0; extra == "dev"
Requires-Dist: pip-licenses>=4.0.0; extra == "dev"
Requires-Dist: cyclonedx-bom>=4.0.0; extra == "dev"
Dynamic: license-file

![image](https://raw.githubusercontent.com/cubert-hyperspectral/cuvis.sdk/main/branding/logo/banner.png)

# CUVIS.AI

[![PyPI version](https://img.shields.io/pypi/v/cuvis-ai.svg)](https://pypi.org/project/cuvis-ai/)
[![CI Status](https://github.com/cubert-hyperspectral/cuvis-ai/actions/workflows/ci.yml/badge.svg)](https://github.com/cubert-hyperspectral/cuvis-ai/actions/workflows/ci.yml)
[![codecov](https://codecov.io/gh/cubert-hyperspectral/cuvis-ai/branch/main/graph/badge.svg)](https://codecov.io/gh/cubert-hyperspectral/cuvis-ai)
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](LICENSE)
[![Python](https://img.shields.io/badge/python-3.11-blue.svg)](https://www.python.org/downloads/)
[![Documentation](https://img.shields.io/badge/docs-gh--pages-blue)](https://docs.cuvis.ai/latest/)

A modular toolkit for building graph-based ML pipelines for hyperspectral imaging — from preprocessing through training to deployment.

## Platform

cuvis.ai is split across three repositories:

| Repository | Role |
|---|---|
| [cuvis-ai-core](https://github.com/cubert-hyperspectral/cuvis-ai-core) | Framework — base `Node` class, pipeline orchestration, two-phase training, gRPC services, plugin system |
| [cuvis-ai-schemas](https://github.com/cubert-hyperspectral/cuvis-ai-schemas) | Shared Protobuf / gRPC schema definitions and generated types |
| **cuvis-ai** (this repo) | Catalog — 40+ domain-specific nodes for anomaly detection, preprocessing, band selection, and more |

## Quick Start

**As a library** (in your own project):

```bash
uv add cuvis-ai
```

> **GPU support**: For PyTorch with CUDA, see the [Installation Guide](https://docs.cuvis.ai/latest/user-guide/installation/) for setup instructions.

**For development** (within this repo):

```bash
uv sync
```

See the [Installation Guide](https://docs.cuvis.ai/latest/user-guide/installation/) for prerequisites and detailed setup.

## Documentation

Full documentation is available at **https://docs.cuvis.ai/latest/**.

- [Quick Start](https://docs.cuvis.ai/latest/user-guide/quickstart/)
- [Core Concepts](https://docs.cuvis.ai/latest/concepts/overview/)
- [Node Catalog](https://docs.cuvis.ai/latest/node-catalog/)
- [Plugin System](https://docs.cuvis.ai/latest/plugin-system/)
- [API Reference](https://docs.cuvis.ai/latest/api/)
- [Contributing](https://docs.cuvis.ai/latest/development/contributing/)

## Links

- **Website:** https://www.cubert-hyperspectral.com/
- **Support:** http://support.cubert-hyperspectral.com/
- **Issues:** https://github.com/cubert-hyperspectral/cuvis-ai/issues
- **Changelog:** [CHANGELOG.md](CHANGELOG.md)

---

Apache License 2.0 — see [LICENSE](LICENSE).
