Skip to content

Commit 1ceb682

Browse files
authored
Add nnInterAppose plugin documentation
Documentation of nnInteractive via appose plugin
1 parent 928a52d commit 1ceb682

1 file changed

Lines changed: 93 additions & 0 deletions

File tree

‎_pages/plugins/nninterappose.md‎

Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
---
2+
title: nnInterAppose
3+
description: Plugin to use nnInteractive from Fiji relying on Appose.
4+
source-url: https://github.com/Image-Analysis-Hub/nnInterappose
5+
icon: /media/icons/nninteractive.png
6+
license: BSD-3 Clause license
7+
categories: [Segmentation, Annotation]
8+
forum-tag: ""
9+
dev-status: 'active'
10+
update-site: 'Appose-Playground'
11+
team-founder: ["Gaelle Letort"]
12+
team-maintainer: ["Gaelle Letort"]
13+
team-developers: ["Gaelle Letort"]
14+
---
15+
16+
This plugin install and run [nnInteractive]([https://www.cellpose.org/](https://github.com/MIC-DKFZ/nnInteractive)) on a stack (3D) in Fiji.
17+
nnInteractive segments objects in 3D based on prompts placed by the user.
18+
19+
This plugin is based on [Appose](https://github.com/apposed/appose), that automatically install python environment and allows python script execution with shared objects with Fiji.
20+
21+
## Installation
22+
23+
You can install the plugin for the unliste update site `Appose-Playground`:
24+
- In Fiji, go to `Help>Update...`
25+
- Select `Manage Update Sites` in the window that opens.
26+
- Click `Add unliste update site`, name it `Appose-Playground` and write its address `https://sites.imagej.net/Appose-Playground`.
27+
- Select the nnInterappose `.jar` file to install only this plugin, or keep all proposed plugins.
28+
- Press `Apply changes` and restart Fiji when it's done.
29+
30+
{% include notice icon="warning" content=" You should have a recent version of Fiji, based on Java 21 or more. Download a new version [here (Latest downloads column)](https://imagej.net/software/fiji/downloads) if you're current installation is too old." %}
31+
32+
## Usage
33+
34+
### Image dimensions
35+
The image must be a 3D (Z slices or T frames) image.
36+
It does not support 2D image or 3D+time stacks.
37+
If the image as several channels, only the currently active one will be used.
38+
39+
40+
### Starting the plugin
41+
42+
From Fiji:
43+
44+
- Open the image that you want to process.
45+
- Launch the plugin: `Plugins>Annotation>nnInteractive`
46+
- Wait for the initialization of the plugin and the network. It will install if necessary a new python environment, activates it and then initialize nnInteractive on your image.
47+
- When it is ready, an interface will appear to let you select some options and a new image `Composite` will apear, with your image as first chanel, and the resulting segmentations will be added to the second chanel.
48+
49+
### Annotate object(s)
50+
Once the plugin is initialized, you can quickly annotate/segment object(s) in 3D by placing prompts (some cues to indicate the object of interest) then letting nnInteractive defines the precise contour in 3D.
51+
52+
Two modes are possible in this plugin: either you want to segment only one object, and place several prompts for the same object to define it better, or you want to select several objects at once.
53+
54+
- Choose:
55+
- `One ROI by object`: to do multiple objects at the same time by placing only one prompt (ROI) by object.
56+
- `All ROIs for one object`: to do only object at a time with as many prompts (ROIs) as you want for a finer segmentation. Prompts can be positive (object is here) or negative (no object here).
57+
58+
- Draw prompts and add them to the RoiManager: press `1` to add positive prompts, `2` to add negative prompts.
59+
60+
#### Prompts
61+
62+
See [nnInteractive](https://github.com/MIC-DKFZ/nnInteractive) for what prompts are possible and their usage.
63+
64+
In this Fiji plugin, currently possible options to annotate are (other ROIs might be added later, you can also file an issue to ask for one to be added):
65+
* Rectangle ROI -> nnInteractive bounding boxes
66+
* Point ROI -> nnInteractive point seed
67+
* Line ROI -> nnInteractive scribble. In the Fiji side, it can be any type of line ROI (single line, segmented line, or freehand line).
68+
69+
![Possible ROI to use](./media/nninterappose/RoiToolbar.png)
70+
71+
If you want the prompt to be a positive interaction (see nnInteractive documentation), press `1` to add the current ROI to the ROIManager as a positive one.
72+
For a negative prompt (relevant in `All ROIs for one object` mode), press `2` to add the current selection to the RoiManager as a negative one.
73+
74+
75+
### Segment
76+
When you have added all the prompts for this iteration, click the button `Segment from ROIs`, or press `0` and wait for the process to finish.
77+
78+
The new label(s) will be added in the second chanel of the Composite image.
79+
80+
By default, all the prompts (ROIs) that you placed are removed after the computation, so that you can start another iteration (segmentation another object).
81+
However, when segmenting complex objects, it might be necessary to add iteratively prompts, try to segment, remove the result and add prompts to improve it.
82+
For this, select the option `keep ROIs` so that the prompts will not be removed.
83+
You can still remove them manually in the ROIManager afterwards.
84+
85+
## Issue
86+
87+
If you encountered a problem using the plugin, or to ask for a new feature, please fill an issue on the [github repository](https://github.com/Image-Analysis-Hub/nnInterappose/issues).Please give as many details as possible.
88+
89+
You can also post a new question on the [imagesc forum](https://forum.image.sc/), mentionning that the question is related to nnInterappose plugin.
90+
91+
To delete a segmented object when the segmentation is not satisfaisante, press `Control` and `left-click on the object.
92+
93+

0 commit comments

Comments
 (0)