Home page
Fractal is a framework to process high-content imaging data at scale and prepare it for interactive visualization.
Fractal enables distributed workflows that convert TBs of image data into OME-Zarr files. Tasks are modular and can be provided by users to apply image processing and measurements. We provide a pacakge of core processing tasks that can apply illumination correction, maximum intensity projection, 3D segmentation using cellpose and measurements using napari workflows. All tasks can be orchestrated by Fractal to run locally or on clusters to scale the image analysis. The resulting pyramidal OME-Zarr files enable interactive visualization in different modern viewers like MoBIE and napari.
Here's an example of browsing a 23-well plate in napari:
Fractal components¶
Fractal is made of different components, including a server/client architecture, a web client and a set of core tasks for image processing.
Component | GitHub Repository | Documentation | Package |
---|---|---|---|
server | fractal-server | fractal-server docs | fractal-server on PyPI |
client | fractal-client | fractal-client docs | fractal-client on PyPI |
web client | fractal-web | fractal-web docs | - |
core tasks | fractal-tasks-core | fractal-tasks-core docs | fractal-tasks-core on PyPI |
Status¶
Fractal is under active development. We have tasks in our core repository and in multiple other tasks repositories. Our core repository contains a converter for Yokogawa CV7000/CV8000 image data as well as different processing tasks for illumination correction, maximum intensity projection, cellpose segmentation. We're working with others to expand the number of compatible OME-Zarr converters (see e.g. fractal-faim-hcs, which uses the faim-hcs converters for the MD Image Xpress) and additional processing tasks (e.g. the scMultipleX package, which contains a Fractal task to make many scikit-image based measurements in 2D and 3D). Follow along on the github repositories above and feel free to open issues.
Build your own task¶
You can easily add your own task to Fractal. Start with the task templates or read up on the task building documentation.
Examples¶
Additional example datasets and workflows are publicly available:
- Larger example input data for Fractal can be found here: 10.5281/zenodo.7057076.
- Example output data from Fractal in the OME-Zarr format can be found here: Small dataset: 10.5281/zenodo.10257149, larger dataset: 10.5281/zenodo.10257532
- Additional example workflows can be found in the fractal-demos repository in the
examples
folder.
Contributors and license¶
Unless otherwise stated in each individual module, all Fractal components are released according to a BSD 3-Clause License, and Copyright is with the BioVisionCenter at the University of Zurich. The Fractal web license remains to be set (we're discussing between permissive and copyleft open source licenses).
Fractal was conceived in the Liberali Lab at the Friedrich Miescher Institute for Biomedical Research and in the Pelkmans Lab at the University of Zurich (both in Switzerland) by @jluethi and @gusqgm. The Fractal project is now developed at the BioVisionCenter at the University of Zurich and the project lead is with @jluethi. The core development is done under contract by eXact lab S.r.l..