Descriptor-based registration (3D) on beads gives poor results

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Descriptor-based registration (3D) on beads gives poor results

Olivier Burri
Dear ImageJ List,

I am using Fiji's Descriptor-based registration (3D) plugin to find the chromatic shift in 1um beads and am hitting a few problems.

(First I apply a median filter and a gaussian blur to smooth out the beads, uneven illumination on the center sof the bead requires it)

1. The result of a translation transform, while it does find the points properly, the alignment is worse.
Using Imaris to assess the shift between detected spots, I go from an average 3D shift of 160nm(+/-30nm) to 340nm(+/-106nm) (n=60) after the 3D registration!

2. It adds slices in the Z direction, but sometimes it's just 2 (Initial # slices=12) or makes the total number jump to 50 slices, while loosing the calibration of the image, so it's not obvious at all how it either re-sampled the volume or simply added slices because of a shift in Z.

3. How does it perform the detection of the maxima? Is it dependent on the slice we're currently on or does it try and find them in 3D?

Has anyone used this plugin successfully to align beads? I know the 1um beads are large, but I find it surprising that this makes the alignment more difficult...

If needed, the image should be accessible from:
https://documents.epfl.ch/groups/p/pt/ptbiop-unit/www/Beads.lsm


Thank you for any help!

Oli


Olivier Burri
Engineer, Development in Image Processing
BioImaging and Optics platform (PTBIOP)
Tel: [+4121 69] 39629

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html
Reply | Threaded
Open this post in threaded view
|

Re: Descriptor-based registration (3D) on beads gives poor results

Stephan Preibisch
Hi Oliver,

I checked out your data. The plugin has problems because of the large anisotropy of the data (1024x1024 vs 10 z-stacks). It has problems locating the beads in 3d because of that - it always treats 3d images as a 3d registration problem. I suggest you work on 2d-projections instead (be sure to check that the images are prealigned to get best results and interactive... for detection segmentation). This returns a reasonable translation:

Found 66 candidates for MAX_C1-Beads.lsm [0] (66 maxima, 0 minima)
Found 66 candidates for MAX_C2-Beads.lsm [0] (66 maxima, 0 minima)
: Remaining inliers after RANSAC (TranslationModel2D): 66 of 66 with average error 0.49956661327318724
[3,3](AffineTransform[[1.0, 0.0, -0.073123499751091], [0.0, 1.0, 0.138884425163269]]) 0.49956661327318724

You can then apply the 2d-transformation to every slice the 3d-stack by just applying it to the 3d stack (run the plugin once more and check "reapply" in the first box popping up, this can be now the 3d stack instead of the 2d-projection).

The plugin is not designed to do color correction (although it turned out to be able to it, too), that's why some of these detours are necessary. In order to run it properly you either transform "channels" into "time-points" or you split the image into the two different channels.

I also think you might not have to do any preprocessing, I use a Difference-of-Gaussian here which smoothes itself, subpixel localization is achieved through an n-dimensional quadratic fit in the local neighborhood of each detection. I suggest you try the "Interactive...", you will get a good idea what he will find and what not. Once you found parameters that you like you can input them also in the "advanced..." option.

In general, in the 3d-case it makes the final image isotropic, I should set the calibration, sorry.

I know that it is a rather complex plugin, it has a lot of options and can do a lot of things. I just had no time to write any documentation yet, but I will do it!

Good luck and just come back to me if you experience more difficulties running it.

Have a great day,
Stephan

On Oct 12, 2012, at 8:46 , Burri Olivier wrote:

> Dear ImageJ List,
>
> I am using Fiji's Descriptor-based registration (3D) plugin to find the chromatic shift in 1um beads and am hitting a few problems.
>
> (First I apply a median filter and a gaussian blur to smooth out the beads, uneven illumination on the center sof the bead requires it)
>
> 1. The result of a translation transform, while it does find the points properly, the alignment is worse.
> Using Imaris to assess the shift between detected spots, I go from an average 3D shift of 160nm(+/-30nm) to 340nm(+/-106nm) (n=60) after the 3D registration!
>
> 2. It adds slices in the Z direction, but sometimes it's just 2 (Initial # slices=12) or makes the total number jump to 50 slices, while loosing the calibration of the image, so it's not obvious at all how it either re-sampled the volume or simply added slices because of a shift in Z.
>
> 3. How does it perform the detection of the maxima? Is it dependent on the slice we're currently on or does it try and find them in 3D?
>
> Has anyone used this plugin successfully to align beads? I know the 1um beads are large, but I find it surprising that this makes the alignment more difficult...
>
> If needed, the image should be accessible from:
> https://documents.epfl.ch/groups/p/pt/ptbiop-unit/www/Beads.lsm
>
>
> Thank you for any help!
>
> Oli
>
>
> Olivier Burri
> Engineer, Development in Image Processing
> BioImaging and Optics platform (PTBIOP)
> Tel: [+4121 69] 39629
>
> --
> ImageJ mailing list: http://imagej.nih.gov/ij/list.html

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html