kaapana
Kaapana is an open source toolkit for state of the art platform provisioning in the field of medical data analysis. The applications comprise AI-based workflows and federated learning scenarios with a focus on radiological and radiotherapeutic imaging. The name Kaapana comes from the Hawaiian word kaʻāpana, meaning "distributor" or "part".
Science Score: 67.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 10 DOI reference(s) in README -
✓Academic publication links
Links to: springer.com -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (14.8%) to scientific vocabulary
Keywords
Repository
Kaapana is an open source toolkit for state of the art platform provisioning in the field of medical data analysis. The applications comprise AI-based workflows and federated learning scenarios with a focus on radiological and radiotherapeutic imaging. The name Kaapana comes from the Hawaiian word kaʻāpana, meaning "distributor" or "part".
Basic Info
- Host: GitHub
- Owner: kaapana
- License: agpl-3.0
- Language: Python
- Default Branch: develop
- Homepage: https://www.kaapana.ai
- Size: 199 MB
Statistics
- Stars: 216
- Watchers: 11
- Forks: 52
- Open Issues: 7
- Releases: 21
Topics
Metadata Files
README.md
What is Kaapana?
Kaapana is an open-source toolkit for state-of-the-art platform provisioning in the field of medical data analysis. The applications comprise AI-based workflows and federated learning scenarios with a focus on radiological and radiotherapeutic imaging. The name Kaapana comes from the Hawaiian word kaʻāpana, meaning "distributor" or "part".
Obtaining large amounts of medical data necessary for developing and training modern machine learning methods is an extremely challenging effort that often fails in a multi-center setting, e.g. due to technical, organizational and legal hurdles. A federated approach where the data remains under the authority of the individual institutions and is only processed on-site is, in contrast, a promising approach ideally suited to overcome these difficulties.
Following this federated concept, the goal of Kaapana is to provide a framework and a set of tools for sharing data processing algorithms, for standardized workflow design and execution as well as for performing distributed method development. This will facilitate data analysis in a compliant way enabling researchers and clinicians to perform large-scale multi-center studies.
By adhering to established standards and by adopting widely used open technologies for private cloud development and containerized data processing, Kaapana integrates seamlessly with the existing clinical IT infrastructure, such as the Picture Archiving and Communication System (PACS), and ensures modularity and easy extensibility.
Core components of Kaapana: * Workflow management: Large-scale image processing with SOTA deep learning algorithms, such as nnU-Net image segmentation and TotalSegmentator * Datasets: Exploration, visualization and curation of medical images * Extensions: Simple integration of new, customized algorithms and applications into the framework * Storage: An integrated PACS system and Minio for other types of data * System monitoring: Extensive resource and system monitoring for administrators * User management Simple user management via Keycloak
Core technologies used in Kaapana: * Kubernetes: Container orchestration system * Helm: The package manager for Kubernetes * Airflow: Workflow management system enabling complex and flexible data processing workflows * OpenSearch: Search engine for DICOM metadata-based searches * dcm4chee: Open source PACS system serving as a central DICOM data storage * Prometheus: Collecting metrics for system monitoring * Grafana: Visualization for monitoring metrics * Keycloak: User authentication * OHIF Viewers: Visualization of medical images
Currently, Kaapana is used in multiple projects in which a Kaapana-based platform is deployed at multiple clinical sites with the objective of distributed radiological image analysis and quantification. The projects include RACOON initiated by NUM with all 38 German university clinics participating, the Joint Imaging Platform (JIP) initiated by the German Cancer Consortium (DKTK) with 11 university clinics participating as well as DART initiated by the Cancer Core Europe with 7 cancer research centers participating.
For more information, please also take a look at our publication of the Kaapana-based Joint Imaging Platform in JCO Clinical Cancer Informatics.
Documentation
Check out the documentation for further information about how Kaapana works, for instructions on how to build, deploy, use and further develop the platform.
Where to find us
- GitLab: The main Kaapana repository, mirrored on GitHub.
- Slack: Join the community for discussions and updates.
- YouTube: Tutorials, demos and more in-depth presentations.
- Website
Versioning
As of Kaapana 0.2.0 we follow strict SemVer approach to versioning.
Citations
Please cite the following paper when using Kaapana:
Jonas Scherer, Marco Nolden, Jens Kleesiek, Jasmin Metzger, Klaus Kades, Verena Schneider, Michael Bach, Oliver Sedlaczek, Andreas M. Bucher, Thomas J. Vogl, ...Klaus Maier-Hein. Joint Imaging Platform for Federated Clinical Data Analytics. JCO Clinical Cancer Informatics, 4:10271038, November 2020. doi: 10.1200/CCI.20.00045. URL https://ascopubs.org/doi/full/10.1200/CCI.20.00045.
When using Kapaana for federated learning please also cite the following paper:
Klaus Kades, Jonas Scherer, Maximilian Zenk, Marius Kempf, and Klaus MaierHein. Towards Real-World Federated Learning in Medical Image Analysis Using Kaapana. In Distributed, Collaborative, and Federated Learning, and Affordable AI and Healthcare for Resource Diverse Global Health, pages 130140, Cham, 2022b. Springer Nature Switzerland. ISBN 978-3-031-18523-6. doi: 10.1007/978-3-031-18523-6_13. URL https://doi.org/10.1007/978-3-031-18523-6_13.
Licence
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program (see file LICENCE).
If not, see https://www.gnu.org/licenses/.
Considerations on our license choice
You can use Kaapana to build any product you like, including commercial closed-source ones since it is a highly modular system. Kaapana is licensed under the GNU Affero General Public License for now since we want to ensure that we can integrate all developments and contributions to its core system for maximum benefit to the community and give everything back. We consider switching to a more liberal license in the future. This decision will depend on how our project develops and what the feedback from the community is regarding the license.
Kaapana is built upon the great work of many other open-source projects, see the documentation for details. For now, we only release source code we created ourselves since providing pre-built docker containers and licensing for highly modular container-based systems is a complex task. We have done our very best to fulfill all requirements, and the choice of AGPL was motivated mainly to make sure we can improve and advance Kaapana in the best way for the whole community. If you have thoughts about this or if you disagree with our way of using a particular third-party toolkit or miss something please let us know and get in touch. We are open to any feedback and advice on this challenging topic.
Contribution guide
If you want to contribute to Kaapana by submitting an issue or code please have a look at our contribution guide.
Acknowledgments
Supporting projects
Building Data Rich Clinical Trials - CCE_DART: This project has received funding from the European Union’s Horizon 2020 research and innovation program under grant agreement No 965397. Website: https://cce-dart.com/
Capturing Tumor Heterogeneity in Hepatocellular Carcinoma - A Radiomics Approach Systematically Tested in Transgenic Mice This project is partially funded by the Deutsche Forschungsgemeinschaft (DFG, German Research Foundation) – 410981386. Website: https://gepris.dfg.de/gepris/projekt/410981386
Data Science Driven Surgical Oncology Project: This work was partially supported by the Data Science Driven Surgical Oncology Project (DSdSO), funded by the Surgical Oncology Program at the National Center for Tumor Diseases (NCT), Heidelberg, a partnership by DKFZ, UKHD, Heidelberg University. Website: https://www.nct-heidelberg.de/forschung/precision-local-therapy-and-image-guidance/surgical-oncology.html
Joint Imaging Platform: This work was partially supported by Joint Imaging Platform, funded by the German Cancer Consortium. Website: https://jip.dktk.dkfz.de/jiphomepage/
HiGHmed: This work was partially supported by the HiGHmed Consortium, funded by the German Federal Ministry of Education and Research (BMBF, funding code 01ZZ1802A). Website: https://highmed.org/
RACOON: This work was partially supported by RACOON, funded by the German Federal Ministry of Education and ResearchDieses in the Netzwerk Universitätsmedizin (NUM; funding code 01KX2021). Website: https://www.netzwerk-universitaetsmedizin.de/projekte/racoon
Trustworthy Federated Data Analysis - TFDA: This work is partially funded by the Helmholtz Association within the project "Trustworthy Federated Data Analytics” (TFDA) (funding number ZT-I-OO1 4). Website: https://tfda.hmsp.center/
Copyright (C) 2025 German Cancer Research Center (DKFZ)
Owner
- Name: kaapana
- Login: kaapana
- Kind: organization
- Repositories: 1
- Profile: https://github.com/kaapana
Citation (CITATION.cff)
cff-version: 1.0.3
message: If you use this software, please cite it using these metadata.
title: 'Joint Imaging Platform for Federated Clinical Data Analytics'
doi: 10.1200/CCI.20.00045
authors:
- family-names: Scherer
given-names Jonas
- family-names: Nolden
given-names Marco
- family-names: Kleesiek
given-names Jens
- family-names: Metzger
given-names Jasmin
- family-names: Kades
given-names Klaus
- family-names: Schneider
given-names Verena
- family-names: Bach
given-names Michael
- family-names: Sedlaczek
given-names Oliver
- family-names: Bucher
given-names Andreas M.
- family-names: Vogl
given-names Thomas J.
- family-names: Grünwald
given-names Frank
- family-names: Kühn
given-names Jens-Peter
- family-names: Hoffmann
given-names Ralf-Thorsten
- family-names: Kotzerke
given-names Jörg
- family-names: Bethge
given-names Oliver
- family-names: Schimmöller
given-names Lars
- family-names: Antoch
given-names Gerald
- family-names: Müller
given-names Hans-Wilhelm
- family-names: Daul
given-names Andreas
- family-names: Nikolaou
given-names Konstantin
- family-names: Fougère
given-names Christian
non-dropping-particle: la
- family-names: Kunz
given-names Wolfgang G.
- family-names: Ingrisch
given-names Michael
- family-names: Schachtner
given-names Balthasar
- family-names: Ricke
given-names Jens
- family-names: Bartenstein
given-names Peter
- family-names: Nensa
given-names Felix
- family-names: Radbruch
given-names Alexander
- family-names: Umutlu
given-names Lale
- family-names: Forsting
given-names Michael
- family-names: Seifert
given-names Robert
- family-names: Herrmann
given-names Ken
- family-names: Mayer
given-names Philipp
- family-names: Kauczor
given-names Hans-Ulrich
- family-names: Penzkofer
given-names Tobias
- family-names: Hamm
given-names Bernd
- family-names: Brenner
given-names Winfried
- family-names: Kloeckner
given-names Roman
- family-names: Düber
given-names Christoph
- family-names: Schreckenberger
given-names Mathias
- family-names: Braren
given-names Rickmer
- family-names: Kaissis
given-names Georgios
- family-names: Makowski
given-names Marcus
- family-names: Eiber
given-names Matthias
- family-names: Gafita
given-names Andrei
- family-names: Trager
given-names Rupert
- family-names: Weber
given-names Wolfgang A.
- family-names: Neubauer
given-names Jakob
- family-names: Reisert
given-names Marco
- family-names: Bock
given-names Michael
- family-names: Bamberg
given-names Fabian
- family-names: Hennig
given-names Jürgen
- family-names: Meyer
given-names Philipp Tobias
- family-names: Ruf
given-names Juri
- family-names: Haberkorn
given-names Uwe
- family-names: Schoenberg
given-names Stefan O.
- family-names: Kuder
given-names Tristan
- family-names: Neher
given-names Peter
- family-names: Floca
given-names Ralf
- family-names: Schlemmer
given-names Heinz-Peter
- family-names: Maier-Hein
given-names Klaus
date-released: 2020-11-09
license: Creative Commons Attribution 4.0
GitHub Events
Total
- Create event: 284
- Issues event: 3
- Release event: 4
- Watch event: 48
- Delete event: 120
- Issue comment event: 19
- Push event: 1,210
- Pull request event: 6
- Fork event: 10
Last Year
- Create event: 284
- Issues event: 3
- Release event: 4
- Watch event: 48
- Delete event: 120
- Issue comment event: 19
- Push event: 1,210
- Pull request event: 6
- Fork event: 10
Issues and Pull Requests
Last synced: 4 months ago
All Time
- Total issues: 8
- Total pull requests: 21
- Average time to close issues: 2 months
- Average time to close pull requests: 9 months
- Total issue authors: 7
- Total pull request authors: 13
- Average comments per issue: 1.75
- Average comments per pull request: 1.24
- Merged pull requests: 1
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 1
- Average time to close issues: N/A
- Average time to close pull requests: 5 months
- Issue authors: 0
- Pull request authors: 1
- Average comments per issue: 0
- Average comments per pull request: 2.0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- vsaase (2)
- kretes (1)
- alemolteni (1)
- Stinosko (1)
- kmilouh (1)
- MS793917946 (1)
- Sikerdebaard (1)
- enasca (1)
Pull Request Authors
- PeePeeJay (4)
- enasca (4)
- fedorov (2)
- vsaase (2)
- MartinK84 (1)
- sedghi (1)
- hmeine (1)
- thunfischtoast (1)
- hammb (1)
- R-Haecker (1)
- santhoshcameo (1)
- kaushalparekh (1)
- schuhegger (1)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- local-only/base-charts-manager latest build
- local-only/base-python-cpu latest build
- local-only/base-python-gpu latest build
- python 3.9.16-slim build
- nvcr.io/nvidia/pytorch 22.12-py3 build
- local-only/dag-installer latest build
- local-only/base-python-cpu latest build
- local-only/base-python-cpu latest build
- local-only/base-python-cpu latest build
- local-only/base-python-cpu latest build
- local-only/base-python-cpu latest build
- local-only/base-python-cpu latest build
- local-only/base-python-cpu latest build
- local-only/base-mitk-phenotyping latest build
- local-only/base-mitk-phenotyping latest build
- local-only/base-python-cpu latest build
- local-only/base-python-cpu latest build
- local-only/base-python-cpu latest build
- local-only/dag-installer latest build
- local-only/base-python-gpu latest build
- local-only/base-python-cpu latest build
- local-only/dag-installer latest build
- local-only/base-python-cpu latest build
- local-only/dag-installer latest build
- local-only/base-python-cpu latest build
- local-only/dag-installer latest build
- local-only/base-python-cpu latest build
- local-only/dag-installer latest build
- local-only/dag-installer latest build
- local-only/dag-installer latest build
- local-only/dag-installer latest build
- local-only/base-python-cpu latest build
- local-only/base-nnunet latest build
- local-only/base-python-cpu latest build
- local-only/base-mitk-phenotyping latest build
- local-only/base-python-cpu latest build
- local-only/dag-installer latest build
- local-only/base-nnunet latest build
- local-only/dag-installer latest build
- local-only/base-mitk-phenotyping latest build
- local-only/dag-installer latest build
- local-only/dag-installer latest build
- dktk-jip-registry.dkfz.de/kaapana-public/multiorgansegmentation v0.9 build
- local-only/dag-installer latest build
- nvcr.io/nvidia/pytorch 22.04-py3 build
- local-only/base-python-cpu latest build
- nginx 1.19.3-alpine build
- local-only/base-python-gpu latest build
- local-only/base-python-cpu latest build
- alpine/git v2.34.2 build
- python 3.8.6-slim-buster build
- alpine/git v2.34.2 build
- nginx 1.21.1-alpine build
- node 16.11.1-alpine3.13 build
- local-only/base-python-gpu latest build
- local-only/no-vnc-base latest build
- httpd 2.4 build
- local-only/base-python-cpu latest build
- local-only/no-vnc-base latest build
- local-only/base-python-cpu latest build
- local-only/base-python-cpu latest build
- local-only/base-python-cpu latest build
- local-only/base-landing-page latest build
- nginx 1.19.3-alpine build
- local-only/base-python-cpu latest build
- prom/statsd-exporter v0.22.7 build
- ubuntu 20.04 build
- alpine 3.12 build
- local-only/base-python-cpu latest build
- local-only/base-python-cpu latest build
- quay.io/keycloak/keycloak 19.0.3 build
- local-only/base-python-cpu latest build
- kubernetesui/dashboard v2.5.1 build
- kubernetesui/metrics-scraper v1.0.7 build
- gcr.io/google_containers/volume-nfs 0.8 build
- busybox 1.31 build
- quay.io/oauth2-proxy/oauth2-proxy v7.2.1 build
- rabbitmq 3.8 build
- traefik v2.6 build
- local-only/base-python-cpu latest build
- opensearchproject/opensearch 2.2.0 build
- opensearchproject/opensearch-dashboards 2.2.0 build
- prom/alertmanager v0.24.0 build
- grafana/grafana 8.4.4 build
- k8s.gcr.io/kube-state-metrics/kube-state-metrics v2.5.0 build
- prom/node-exporter v1.5.0 build
- prom/prometheus v2.34.0 build
- dcm4che/dcm4chee-arc-psql 5.26.0 build
- dcm4che/slapd-dcm4chee 2.4.58-26.0 build
- dcm4che/postgres-dcm4chee 9.6.24-26 build
- minio/minio RELEASE.2022-03-26T06-49-28Z build
- golang 1.17 build
- node 17 build
- registry.access.redhat.com/ubi8/ubi-minimal 8.5 build
- nginx stable-alpine build
- node lts-alpine3.10 build
- local-only/base-python-cpu latest build
- minio/mc RELEASE.2022-03-31T04-55-30Z build
- node lts-alpine3.16 build
- dorowu/ubuntu-desktop-lxde-vnc focal build
- busybox 1.31 build
- local-only/base-python-cpu latest build
- local-only/dag-installer latest build
- local-only/base-python-cpu latest build
- local-only/base-python-cpu latest build
- local-only/dag-installer latest build
- local-only/base-python-cpu latest build
- local-only/base-python-cpu latest build
- local-only/base-python-cpu latest build