Effacer les filtres
Effacer les filtres

3D input parameters using imregister

2 vues (au cours des 30 derniers jours)
Isabel
Isabel le 18 Oct 2012
Hi,
I would like to use imregister for registration of a volume. My data is MR images, so my volume is formed by 28 slices (my matrix is 512x512x28 int16). So my question is how should I pass this matrix as input using imregister? in both examples the input images are given as a simple 2D images, so I don't know how to use it for 3D, can someone help me?
Thank you in advance.

Réponse acceptée

Sean de Wolski
Sean de Wolski le 18 Oct 2012
Hi Isabel,
You pass in a three dimensional image volume the same way you pass in a two dimensional image. Here is an example:
load mri;
D = padarray(squeeze(D),[5 5 5]); %make bigger
D2 = imtranslate(D,[2.7 -5.1 1.5]); %Translate the image a little bit so imregister has to work
[optim metric]= imregconfig('monomodal'); %build the optimizer
mr = imregister(D2,D,'rigid',optim,metric); %register
imtranslate can be found here.
  7 commentaires
Sean de Wolski
Sean de Wolski le 18 Oct 2012
Yes, and it does! At least for me with the above example. It's hard to say what's causing the error you're seeing since I don't know anything about mr1/mr2 and how you're calling imregister
Isabel
Isabel le 18 Oct 2012
Dear Sean, now it is working. I just restarted the computer and try it from the beginning and now no erros =)
Thank you for your help

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by