[Neuroimaging] 3d registration for data fusion in material science

Alexis Roche alexis.roche at gmail.com
Mon Aug 31 16:05:58 CEST 2015


Hi Ben,

Updated examples can be found here:
https://github.com/nipy/nireg/tree/master/examples

At the moment, you will be able to do functional/anatomical rigid
registration using nireg (see code sketch above), but it doesn't implement
nonrigid registration yet, so it's not recommended for whole-brain
subject-atlas realignment at the moment.


# Basic structural / functional rigid registration using nireg

import nibabel as nb
import nireg as nr

fun = nb.load('some_functional_image.nii')
anat = nb.load('some_T1w_image.nii')

R = nr.HistogramRegistration(fun, anat)
T = R.optimize('rigid')
fun_t = nr.resample(fun, T.inv(), reference=anat)

nb.save(funt_t, 'resampled_functional_image.nii')
Alexis

On Mon, Aug 24, 2015 at 12:17 AM, Ben Cipollini <bcipolli at ucsd.edu> wrote:

> Alexis,
>
> I'm also interested in having this demo. Is this the right code-path to do
> functional/structural alignment within a subject as well as aligning
> subject and atlas data?
>
> Thanks,
> Ben
>
> On Fri, Aug 21, 2015 at 9:57 AM, Alexis Roche <alexis.roche at gmail.com>
> wrote:
>
>> Hi,
>>
>> I am realizing that the following example script is outdated as it still
>> relies on importing nipy:
>>
>> https://github.com/nipy/nireg/blob/master/examples/affine_registration.py
>>
>> I will submit an update in a few days. The registration code was
>> previously part of the nipy package, which we have recently decided to
>> split into several standalone packages, including nireg. The idea is that
>> nireg only needs nibabel to run (in addition to the standard numpy/scipy
>> packages).
>>
>>
>> > -          how to convert a numpy array to nipy-like image ?
>>
>> This is done using nibabel, see in particular the Nifti1Image class.
>>
>> > -          should the two images have the same size ?
>>
>> No.
>>
>> > -          the version of nipy that I should use ?
>>
>> As mentioned above, the latest version of the code does not require nipy.
>>
>> I will let you know when I push an up-to-date version of the affine
>> registration example script.
>>
>> Best,
>>
>> Alexis
>>
>>
>> >
>> >
>> >
>> >
>> >
>> > thank you, really, for your attention, this is kind.
>> >
>> >
>> >
>> > Gael
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> > De : Neuroimaging [mailto:neuroimaging-bounces+gael.goret=
>> cea.fr at python.org] De la part de Alexis Roche
>> > Envoyé : vendredi 21 août 2015 13:04
>> >
>> >
>> > À : Neuroimaging analysis in Python
>> > Objet : Re: [Neuroimaging] 3d registration for data fusion in material
>> science
>> >
>> >
>> >
>> > Hi Gael,
>> >
>> > Beside the stuff in dipy that Elef mentioned, there is another brain
>> image registration package that has slowly developed over the years, and
>> could be useful to you (although it still crucially lacks documentation):
>> >
>> > https://github.com/nipy/nireg
>> >
>> >
>> >
>> > This is rigid/affine registration only for the time being and has a BSD
>> license too.
>> >
>> >
>> >
>> > Best,
>> >
>> > Alexis
>> >
>> >
>> >
>> > On Fri, Aug 21, 2015 at 9:57 AM, GORET Gael 246279 <Gael.GORET at cea.fr>
>> wrote:
>> >
>> > Hi all,
>> >
>> >
>> >
>> > Thanks for your quick replies,
>> >
>> > This project is just starting, and there is not too much materials …
>> >
>> > However, to answer your questions, I just have created a public repo on
>> my github account :
>> >
>> >
>> >
>> > https://github.com/ggoret/MUDRA
>> >
>> >
>> >
>> > -          In /doc, I have placed a summary (a pdf slideshow) of the
>> project containing some pictures (and info on instruments)
>> >
>> >
>> >
>> > -          In /examples I have put two data volumes (npy binary file
>> format) the kind of data I need to register.
>> >
>> >
>> >
>> > -          In /mudra a first (naive) try using the Fourier shell
>> correlation as metric
>> >
>> > And you can also find
>> >
>> > -          a Cython wrapping of malik and perona’s algorithms
>> implementation working (pretty quickly) on 3D Volumes :
>> >
>> > o   /mudra/extensions/non_linear_filtering.pyx
>> >
>> >
>> >
>> > -          In /scripts you will find mainly converters simplifying I/O
>> >
>> > -          In /tools 3 very nice visualization tools based on VTK (not
>> mayavi) working as standalone (npy input) :
>> >
>> > o   elevation.py -> 2d image to 3d landscape
>> >
>> > o   plan_interpolator.py -> 2d slicing of volume + isosurface rendering
>> for given seeds
>> >
>> > o   scalar_field.py -> volume rendering (color and opacity gradient)
>> >
>> >
>> >
>> > Thanks in advance for your advices
>> >
>> >
>> >
>> > Cheers,
>> >
>> >
>> >
>> > Gael
>> >
>> >
>> >
>> > De : Neuroimaging [mailto:neuroimaging-bounces+gael.goret=
>> cea.fr at python.org] De la part de Eleftherios Garyfallidis
>> > Envoyé : jeudi 20 août 2015 16:35
>> > À : Neuroimaging analysis in Python
>> > Objet : Re: [Neuroimaging] 3d registration for data fusion in material
>> science
>> >
>> >
>> >
>> > Hi Gael,
>> >
>> >
>> >
>> > Sounds exciting. There is no restriction to use our tools in other
>> libraries or domains.
>> >
>> > Look at these tutorials please (you need dipy development version)
>> >
>> >
>> >
>> >
>> https://github.com/nipy/dipy/blob/master/doc/examples/affine_registration_3d.py
>> >
>> >
>> https://github.com/nipy/dipy/blob/master/doc/examples/syn_registration_2d.py
>> >
>> >
>> https://github.com/nipy/dipy/blob/master/doc/examples/syn_registration_3d.py
>> >
>> >
>> >
>> > Do you have a github repo of your project? Do you have any example
>> pictures/volumes to show us that you would
>> >
>> > like to register?
>> >
>> >
>> >
>> > Cheers,
>> >
>> > Eleftherios
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> > On Thu, Aug 20, 2015 at 9:31 AM, GORET Gael 246279 <Gael.GORET at cea.fr>
>> wrote:
>> >
>> > Hi everybody,
>> >
>> > I am a (French) newcomer, working on the development of the data fusion
>> of Time-of-Flight Secondary Ion Mass Spectrometer (ToF-SIMS) and X ray
>> Nano-Tomography (XuM) data at the CEA (the French state institute for
>> energy, high-tech, etc.).
>> >
>> > In terms of samples, we’re a bit far from the neuro-fields … Solid
>> oxide fuel cell, 3D chips, Si/Li matrix, etc., but in terms of methodology
>> I hope we have to share … my project is to combine a chemical information
>> (from ToF-SIMS) with X-ray absorption (given by XuM) for a given volume (at
>> nano-scale).  I am tackling a python module aiming to the registration of
>> 3d datasets. it seems that nipy includes a such possibility (an a lot more
>> …).
>> >
>> > I’m a computer guy, mostly Pythonist and I wander if you would let  me
>> transpose your code (mainly the registration part) to my problematic, I
>> would be very grateful for this.
>> >
>> > In this context would you have some advice for me ?
>> >
>> > I'm looking forward to hearing from you.
>> >
>> > Gael
>> >
>> >
>> >
>> >
>> >
>> > Dr. Gaël Goret
>> >
>> > Chercheur Postdoctoral
>> >
>> > Département des Technologies Silicium
>> >
>> > Service de Caractérisation des Matériaux & Composants
>> >
>> > Commissariat à l’énergie atomique et aux énergies alternatives
>> >
>> > MINATEC Campus | 17 rue des martyrs | F-38054 Grenoble Cedex
>> >
>> > T. +33 (0)4 38 78 49 29 | gael.goret at cea.fr
>> >
>> >
>> >
>> >
>> > _______________________________________________
>> > Neuroimaging mailing list
>> > Neuroimaging at python.org
>> > https://mail.python.org/mailman/listinfo/neuroimaging
>> >
>> >
>> >
>> >
>> > _______________________________________________
>> > Neuroimaging mailing list
>> > Neuroimaging at python.org
>> > https://mail.python.org/mailman/listinfo/neuroimaging
>> >
>> >
>> >
>> >
>> > --
>> >
>> > Lead Clinical Research
>> > Advanced Clinical Imaging Technology
>> > Siemens/CHUV/EPFL
>> > 1015 Lausanne, Switzerland
>> > Phone: +41 21 545 9972
>> > https://sites.google.com/site/alexisroche
>> >
>> >
>> > _______________________________________________
>> > Neuroimaging mailing list
>> > Neuroimaging at python.org
>> > https://mail.python.org/mailman/listinfo/neuroimaging
>> >
>>
>>
>>
>> --
>> Lead Clinical Research
>> Advanced Clinical Imaging Technology
>> Siemens/CHUV/EPFL
>> 1015 Lausanne, Switzerland
>> Phone: +41 21 545 9972
>> https://sites.google.com/site/alexisroche
>>
>> _______________________________________________
>> Neuroimaging mailing list
>> Neuroimaging at python.org
>> https://mail.python.org/mailman/listinfo/neuroimaging
>>
>>
>
> _______________________________________________
> Neuroimaging mailing list
> Neuroimaging at python.org
> https://mail.python.org/mailman/listinfo/neuroimaging
>
>


-- 
Lead Clinical Research
Advanced Clinical Imaging Technology
Siemens/CHUV/EPFL
1015 Lausanne, Switzerland
Phone: +41 21 545 9972
https://sites.google.com/site/alexisroche
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/neuroimaging/attachments/20150831/178cda91/attachment.html>


More information about the Neuroimaging mailing list