3D input parameters using imregister
2 次查看(过去 30 天)
显示 更早的评论
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.
0 个评论
采纳的回答
Sean de Wolski
2012-10-18
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 个评论
Sean de Wolski
2012-10-18
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
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!