Version:

  • 0.3.4

Release date:

  • 15 May 2022

First released:

  • 05 March 2022

License:

  • BSD-3-Clause

Supported data:

  • Information not submitted

GitHub activity:

  • Stars: 8
  • Forks: 1
  • Issues + PRs: 7

GitHub activity:

  • Stars: 8
  • Forks: 1
  • Issues + PRs: 7

Python versions supported:

  • >=3.7

Operating system:

  • Information not submitted

Requirements:

  • napari-plugin-engine (>=0.1.4)
  • toolz
  • napari (>=0.4.14)
  • magicgui
  • numpy (!=1.19.4)
  • pyperclip
  • loguru
  • jupytext
  • jupyter
  • pandas
  • napari-time-slicer (>=0.4.4)
  • napari-skimage-regionprops (>=0.2.0)
  • napari-workflows (>=0.2.0)

napari-assistant

A pocket calculator like interface to image processing in napari


    Authors:

    • Robert Haase, Ryan Savill

    Source code:

    Authors:

    • Robert Haase, Ryan Savill

    Source code:

    License PyPI Python Version tests codecov Development Status napari hub DOI

    The napari-assistant is a napari meta-plugin for building image processing workflows.

    Usage

    After installing one or more napari plugins that use the napari-assistant as user interface, you can start it from the menu Tools > Utilities > Assistant (na) or run naparia from the command line.

    By clicking on the buttons in the assistant, you can setup a workflow for processing the images.

    img.png

    While setting up your workflow, you can at any point select a layer from the layer list (1) and change the parameters of the corresponding operation (2). The layer will update when you change parameters and also all subsequent operations. You can also vary which operation is applied to the image (3). Also make sure the right input image layer is selected (4).

    img.png

    Saving and loading workflows

    You can also save and load workflows to disk.

    img.png

    After loading a workflow, make sure that the right input images are selected.

    Code generation

    The napari-assistant allows exporting the given workflow as Python script and Jupyter Notebook.

    img.png

    Furthermore, if you have the napari-script-editor installed, you can also send the current workflow as code to the script editor from the same menu.

    img.png

    Installation

    It is recommended to install the napari-assistant via one of the plugins that use it as graphical user interface. You find a complete list of plugins that use the assistant on the napari-hub.

    For developers

    If you want to make your napari-plugin accessible from the napari-assistant, consider programming functions with a simple interface that consume images, labels, integers, floats and strings. Annotate input and return types, e.g. like this:

    def example_function_widget(image: "napari.types.ImageData") -> "napari.types.LabelsData":
        from skimage.filters import threshold_otsu
        binary_image = image > threshold_otsu(image)
    
        from skimage.measure import label
        return label(binary_image)

    Furthermore, please add your function to the napari.yaml which uses npe2:

    name: napari-npe2-test
    display_name: napari-npe2-test
    contributions:
      commands: 
        - id: napari-npe2-test.make_magic_widget
          python_name: napari_npe2_test._widget:example_magic_widget
          title: Make example magic widget
      widgets:
        - command: napari-npe2-test.make_magic_widget
          display_name: Segmentation / labeling > Otsu Labeling (nnpe2t)

    To put it in the right button within the napari-assistant, please use one of the following prefixes for the display_name:

    • Filtering / noise removal >
    • Filtering / background removal >
    • Filtering >
    • Image math >
    • Transform >
    • Projection >
    • Segmentation / binarization >
    • Segmentation / labeling >
    • Segmentation post-processing >
    • Measurement >
    • Label neighbor filters >
    • Label filters >
    • Visualization >

    You find a fully functional example here.

    Last but not least, to make your napari-plugin is listed in the napari-hub when searching for "napari-assistant", make sure you mention it in your readme.

    Feedback welcome!

    The napari-assistant is developed in the open because we believe in the open source community. Feel free to drop feedback as github issue or via image.sc

    Contributing

    Contributions are very welcome. Please ensure the test coverage at least stays the same before you submit a pull request.

    License

    Distributed under the terms of the BSD-3 license, "napari-assistant" is free and open source software

    Acknowledgements

    This project was supported by the Deutsche Forschungsgemeinschaft under Germany’s Excellence Strategy – EXC2068 - Cluster of Excellence "Physics of Life" of TU Dresden. This project has been made possible in part by grant number 2021-240341 (Napari plugin accelerator grant) from the Chan Zuckerberg Initiative DAF, an advised fund of the Silicon Valley Community Foundation.

    Version:

    • 0.3.4

    Release date:

    • 15 May 2022

    First released:

    • 05 March 2022

    License:

    • BSD-3-Clause

    Supported data:

    • Information not submitted

    GitHub activity:

    • Stars: 8
    • Forks: 1
    • Issues + PRs: 7

    Python versions supported:

    • >=3.7

    Operating system:

    • Information not submitted

    Requirements:

    • napari-plugin-engine (>=0.1.4)
    • toolz
    • napari (>=0.4.14)
    • magicgui
    • numpy (!=1.19.4)
    • pyperclip
    • loguru
    • jupytext
    • jupyter
    • pandas
    • napari-time-slicer (>=0.4.4)
    • napari-skimage-regionprops (>=0.2.0)
    • napari-workflows (>=0.2.0)

    Version:

    • 0.3.4

    Release date:

    • 15 May 2022

    First released:

    • 05 March 2022

    License:

    • BSD-3-Clause

    Supported data:

    • Information not submitted

    GitHub activity:

    • Stars: 8
    • Forks: 1
    • Issues + PRs: 7

    GitHub activity:

    • Stars: 8
    • Forks: 1
    • Issues + PRs: 7

    Python versions supported:

    • >=3.7

    Operating system:

    • Information not submitted

    Requirements:

    • napari-plugin-engine (>=0.1.4)
    • toolz
    • napari (>=0.4.14)
    • magicgui
    • numpy (!=1.19.4)
    • pyperclip
    • loguru
    • jupytext
    • jupyter
    • pandas
    • napari-time-slicer (>=0.4.4)
    • napari-skimage-regionprops (>=0.2.0)
    • napari-workflows (>=0.2.0)

    Sign up to receive updates