elf

elf implements image analysis functionality for large microscopy data.

Overview

elf provides functionality for different image analysis tasks. The main functionality is:

  • elf.evaluation: Common metrics for evaluating segmentation results.
  • elf.io: Common interface for reading file formats for large microscopy data.
  • elf.parallel: Parallel implementations of image analysis functions.
  • elf.segmentation: Segmentation functions based on clustering, (lifted) multicut, mutex watershed and more.
  • elf.tracking: Graph-based tracking algorithms.
  • elf.wrapper: Wrapper for large microscopy data to enable on-the-fly processing.

Important: We have recently switched to using bioimage-cpp as new library to implement computationally expensive functionality that was previously used from affogato, nifty, and vigra. This enables installing elf via pip, but may lead to some bugs and incompatibilities. If you encounter some problem let us know in an issue; you can also install elf < 0.9 to restore the previous version.

Installation

elf is available on conda-forge and on PyPI. You can install it into an existing conda environment with conda via:

conda install -c conda-forge python-elf

or install it via pip as follows:

pip install python-elf

We also provide a environment for a development environment. To set it up:

  1. Clone the elf repository:
git clone https://github.com/constantinpape/elf
  1. Enter the root elf directory:
cd elf
  1. Create the development environment:
conda create -f environment.yaml
  1. Activate the environment:
conda activate elf-dev
  1. Install elf in development mode:
pip install -e .

Usage & Examples

Example scripts for many of elf's features can be found in example.

elf also provides command line functionality. Currently provided are the command line interfaces:

  • view_container: Visualize the content of any file supported by elf.io with napari.
 1"""[elf](https://github.com/constantinpape/elf) implements image analysis functionality for large microscopy data.
 2
 3# Overview
 4
 5`elf` provides functionality for different image analysis tasks. The main functionality is:
 6- `elf.evaluation`: Common metrics for evaluating segmentation results.
 7- `elf.io`: Common interface for reading file formats for large microscopy data.
 8- `elf.parallel`: Parallel implementations of image analysis functions.
 9- `elf.segmentation`: Segmentation functions based on clustering, (lifted) multicut, mutex watershed and more.
10- `elf.tracking`: Graph-based tracking algorithms.
11- `elf.wrapper`: Wrapper for large microscopy data to enable on-the-fly processing.
12
13**Important:** We have recently switched to using [bioimage-cpp](https://github.com/computational-cell-analytics/bioimage-cpp) as new library to implement computationally expensive functionality that was previously used from affogato, nifty, and vigra.
14This enables installing elf via pip, but may lead to some bugs and incompatibilities.
15If you encounter some problem let us know in an issue; you can also install `elf < 0.9` to restore the previous version.
16
17# Installation
18
19`elf` is available on conda-forge and on PyPI. You can install it into an existing conda environment with conda via:
20```bash
21conda install -c conda-forge python-elf
22```
23or install it via pip as follows:
24```bash
25pip install python-elf
26```
27
28We also provide a environment for a development environment. To set it up:
291. Clone the elf repository:
30```
31git clone https://github.com/constantinpape/elf
32```
332. Enter the root elf directory:
34```
35cd elf
36```
373. Create the development environment:
38```
39conda create -f environment.yaml
40```
414. Activate the environment:
42```
43conda activate elf-dev
44```
455. Install elf in development mode:
46```
47pip install -e .
48```
49
50# Usage & Examples
51
52Example scripts for many of `elf`'s features can be found in [example](https://github.com/constantinpape/elf/tree/master/example).
53
54`elf` also provides command line functionality. Currently provided are the command line interfaces:
55- `view_container`: Visualize the content of any file supported by `elf.io` with napari.
56"""  # noqa
57
58import warnings
59from .__version__ import __version__  # noqa
60
61warnings.warn(
62    "elf has switched from the affogato, vigra, and nifty librares to "
63    "https://github.com/computational-cell-analytics/bioimage-cpp as new backed for custom functionality "
64    "implemented in C++, e.g. mutex watershed, multicut etc. This may lead to some changes in behavior and "
65    "interface. If you run into issues with the new version consider installing a version < 0.9. "
66    "Please also consider raising an issue on github so that we are aware of issues with the migration.",
67    UserWarning, stacklevel=2
68)