Skip to content

EPFL Center for Imaging logo

👋 Welcome!

The Imaging Server Kit is an initiative started by the EPFL Center for Imaging to develop a simple framework for creating and using interoperable image processing algorithms via a client/server system.

serverkit-schema

The kit includes:

  • A collection of algorithms that can be deployed as web servers (with or without Docker) and run from QuPath or Napari, for a wide range of tasks:
Task Examples Napari QuPath
Segmentation StarDist, CellPose, Rembg, SAM-2, InstanSeg
Object detection Spotiflow, LoG detector
Vector fields Orientationpy
Object tracking Trackastra, Trackpy
Image-to-Image SPAM, Noise2Void
Text-to-Image Stable Diffusion
Image-to-Text Image captioning
Classification ResNet50
  • A Template to easily create new image processing algorithm servers.

The Imaging Server Kit is designed for:

  • Algorithm developers: Test your tools in QuPath or Napari without having to create extensions or plugins.
  • Non-technical Users: Use Python projects without needing to set them up on your computer.

Key Benefits

  • Interoperable Algorithms: Easily compare algorithm outputs or integrate multiple algorithms to build complex workflows.
  • Generated Interfaces: Automatically generate UIs for algorithm parameters in QuPath and Napari. No need for separate extensions or plugins!
  • Processing on a Server: Run algorithms on a powerful workstation or server (e.g., with GPU) and connect to them via client apps on a laptop.
  • Easy Deployment: Pull a Docker image, then simply start/stop a container to use an algorithm.

Roadmap

February 2025

The Imaging Server Kit is under construction! Here is what we're up to:

  • Add styling to the algorithm /info page
  • Add a class output type to support image classifiers
  • Add a text input/output type to support diffusion models and LLMs
  • Screencast a tutorial on how to create a new algorithm server
  • Add a server-side timeout to the /process endpoint
  • Handle tiling and optimize for running on whole-slide images
  • Add a sample image button in the QuPath extension
  • QuPath extension can send annotations as algo inputs
  • Make a Fiji plugin

Contributors

  • Mallory Wittwer, EPFL Center for Imaging ([email protected])
  • Edward Andò, EPFL Center for Imaging
  • Maud Barthélémy, EPFL Center for Imaging
  • Florian Aymanns, EPFL Center for Imaging

Acknowledgements

We acknowledge the Personalized Health and Related Technologies (PHRT) initiative for supporting this project.

Pinned Loading

  1. imaging-server-kit Public

    Deploy image processing algorithms in FastAPI servers and easily run them in Napari, QuPath, and more.

    Python 2 1

  2. cookiecutter-serverkit Public

    Cookiecutter template for creating Imaging Server Kit servers

    Python

  3. qupath-extension-serverkit Public

    Run image processing algorithms in QuPath using a client/server interface

    Java 1

  4. napari-serverkit Public

    Run image processing algorithms in Napari using a client/server interface

    Python 1

  5. serverkit-deploy-docker Public

    Reference deployment to run several image processing servers using Docker Compose

Repositories

Showing 10 of 21 repositories
  • .github Public
    0 0 0 0 Updated Feb 28, 2025
  • serverkit-deploy-docker Public

    Reference deployment to run several image processing servers using Docker Compose

    0 BSD-3-Clause 0 0 0 Updated Feb 27, 2025
  • imaging-server-kit Public

    Deploy image processing algorithms in FastAPI servers and easily run them in Napari, QuPath, and more.

    Python 2 BSD-3-Clause 1 0 0 Updated Feb 25, 2025
  • cookiecutter-serverkit Public

    Cookiecutter template for creating Imaging Server Kit servers

    Python 0 BSD-3-Clause 0 0 0 Updated Feb 24, 2025
  • serverkit-trackpy Public

    Implementation of a web server for object tracking using Trackpy.

    Python 0 0 0 0 Updated Feb 24, 2025
  • serverkit-trackastra Public

    Implementation of a web server for cell tracking using Trackastra.

    Python 0 0 0 0 Updated Feb 24, 2025
  • serverkit-stardist Public

    Implementation of a web server for cell nuclei detection using StarDist.

    Python 0 1 0 0 Updated Feb 24, 2025
  • serverkit-stable-diffusion Public

    Implementation of a web server for image generation using Stable Diffusion.

    Python 1 0 0 0 Updated Feb 24, 2025
  • serverkit-spotiflow Public

    Implementation of a web server for spot detection using Spotiflow.

    Python 0 0 0 0 Updated Feb 24, 2025
  • serverkit-spam Public

    Implementation of a web server for image registration using SPAM.

    Python 0 0 0 0 Updated Feb 24, 2025

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Python Java