Process high-content imaging data at scale and prepare it for interactive visualization
Fractal is a framework to process high-content imaging data at scale and prepare it for interactive visualization.
Fractal provides distributed workflows that convert TBs of image data into OME-Zarr files. The platform then processes the 3D image data by applying tasks like illumination correction, maximum intensity projection, 3D segmentation using cellpose and measurements using napari workflows. The pyramidal OME-Zarr files enable interactive visualization in the napari viewer.
OME-Zarr files can be interactively visualizated in napari. Here is an example using the newly-proposed async loading in NAP4 and a dev version of the napari-ome-zarr plugin:
Fractal is made of different components, including a server/client architecture and a set of core tasks for image processing.
|server||fractal-server||fractal-server docs||fractal-server on PyPI|
|client||fractal||fractal docs||fractal-client on PyPI|
|core tasks||fractal-tasks-core||fractal-tasks-core docs||fractal-tasks-core on PyPI|
Fractal is under active development. We have the core processing functionality working for Yokogawa CV7000 image data and a series of workflows for processing OME-Zarr images from illumination correction to feature measurements. We are still adding core functionality and will introduce breaking changes to improve task flexibility and expand the collection of tasks. Follow along on the github repositories above.
Fractal runs on a laptop (tested both on Linux & macOS) or on a server that submits jobs to a SLURM cluster. The documentation above describes the preconditions and the different configurations that can be changed. To get started with Fractal, you can follow the setup in the fractal-demos repository. Follow the instructions here on how to install the fractal-server.
Once you have successfully installed and started the Fractal server, you can install a fractal-client environment and interact with the Fractal server from there. To do so, follow the instructions for the 01_cardio_tiny_dataset example. This also includes a link to a tiny dataset and instructions on how to run a full Fractal workflow on this dataset (which should run in under a minute).
A video walk-through for how to get started is available here:
Additional example datasets and workflows are publicly available:
08_cardio_2x2_napari_workflowscontains a workflow to produce the example output using the example input. Other examples contain different workflows for data that has not been made public so far.
Unless otherwise stated in each individual module, all Fractal components are released according to a BSD 3-Clause License, and Copyright is with Friedrich Miescher Institute for Biomedical Research and University of Zurich.
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). The project lead is with @gusqgm & @jluethi. The core development is done under contract by eXact lab S.r.l..