Skip to content
Snippets Groups Projects
Commit dd7f5f83 authored by Gaelle Letort's avatar Gaelle Letort
Browse files

Merge branch 'main' of https://gitlab.pasteur.fr/gletort/napari-3dtimereg into main

parents 25e568f2 332578b3
No related branches found
No related tags found
No related merge requests found
...@@ -10,9 +10,28 @@ Temporal registration of 2D/3D movies on one channel based on [itk-elastix](http ...@@ -10,9 +10,28 @@ Temporal registration of 2D/3D movies on one channel based on [itk-elastix](http
Adaptated from [multireg](https://gitlab.pasteur.fr/gletort/multireg) for temporal movies. Adaptated from [multireg](https://gitlab.pasteur.fr/gletort/multireg) for temporal movies.
For a tutorial on using `elastix` for registration, see [this tutorial](https://m-albert.github.io/elastix_tutorial/intro.html). For a tutorial on using `elastix` for registration, see [this tutorial](https://m-albert.github.io/elastix_tutorial/intro.html).
* [Installation](#installation)
* [System requirement](#system-requirement)
* [Installation steps](#installation-steps)
* [Usage](#usage)
* [Demo](#demotest)
* [License](#license)
---------------------------------- ----------------------------------
## Installation # Installation
## System requirement
`napari-3dtimereg` is a Napari plugin therefore can be installed on all operating systems.
It requires a python environement compatible with `Napari` and `elastix` version.
### Tested system
It has been tested on python 3.9, napari XX and elastix XX.
## Installation steps
In a python environment that contains Napari:
* You can install the plugin directly in `Napari` by going to `Plugins>Install/Uninstall plugins` and search for `napari-3dtimereg` * You can install the plugin directly in `Napari` by going to `Plugins>Install/Uninstall plugins` and search for `napari-3dtimereg`
...@@ -21,7 +40,10 @@ For a tutorial on using `elastix` for registration, see [this tutorial](https:// ...@@ -21,7 +40,10 @@ For a tutorial on using `elastix` for registration, see [this tutorial](https://
pip install napari-3dtimereg pip install napari-3dtimereg
## Usage If you don't have Napari installed yet, see [here](https://napari.org/stable/tutorials/fundamentals/quick_start.html#napari-quick-start) for installation instructions.
# Usage
You can launch `3dtimereg` in napari by going to `Plugins>Do 3D movie registration (napari-3dtimereg)`. You can launch `3dtimereg` in napari by going to `Plugins>Do 3D movie registration (napari-3dtimereg)`.
...@@ -58,9 +80,53 @@ When all frames have been processed, each color chanel and each frame have been ...@@ -58,9 +80,53 @@ When all frames have been processed, each color chanel and each frame have been
If you click on `Concatenate aligned images` on the plugin interface, the plugin will create a single composite movie from the aligned images, save it and delete the separated images in the `aligned` folder. If you click on `Concatenate aligned images` on the plugin interface, the plugin will create a single composite movie from the aligned images, save it and delete the separated images in the `aligned` folder.
## License
Distributed under the terms of the [BSD-3] license, "napari-3dtimereg" is free and open source software # Demo/Test
To test this plugin, you can use our [demo dataset](https://zenodo.org/records/15028169) proposed in a Zenodo repository or directly on your own dataset.
If you use the data from the Zenodo repository, the file to use to test this plugin is the movie `Registration_WTn1_Crop_V1.tif` which has been cropped from our dataset to reduce the size.
## Steps
The input of the process should be a `.tiff` 3D and temporal stack with one or more channels.
If you want to use fix points registration option, you should have a file that contains the position of each tracked point at each time.
See in our demo dataset for the format of this file.
It can be for example generated from a [TrackMate](https://imagej.net/plugins/trackmate/) file with the macro [getTrackPosition](XX) proposed in this repository.
Activate your python virtual environement in which napari and the plugin are installed.
For example, if the name of the environment is `timereg-env`, type: `conda activate timereg-env`.
When it's activated, type `napari` to start Napari.
Go to `Plugins>napari-3dtimereg` to start it.
Load the movie to register. The plugin will ask you to choose the channel on which to calculate the registration, so choose a channel that should be immobile during the movie (for example, the channel containing the fibers which should be stable over time).
Set the `reference channel` to the corresponding channel number (that you can see in the bottom left part of the viewer, with the layers name `MovieChannel*`).
![example screenshot](./imgs/load.png)
## Parameters
In [Sarde et al., 2025](https://www.biorxiv.org/content/10.1101/2025.03.13.643016v1), we used the following parameter values to register our intravital movies:
* `use reference points: True`
* `rigid resolution: 4`
* `spline resolution: 2`
* `iterations: 1000`
* `rigid final spacing: 50`
* `spline final spacing: 200`
* `final order: 1`
## Output
At the end of the process, you will get a folder named `aligned` in which all processed stacks will be saved (registered stacks)
# License
Distributed under the terms of the [BSD-3] license, "napari-3dtimereg" is free and open source software.
If you use it, please cite our paper [Sarde et al., 2025](https://www.biorxiv.org/content/10.1101/2025.03.13.643016v1).
[napari]: https://github.com/napari/napari [napari]: https://github.com/napari/napari
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment