Problem accessing the deformation map in image registration (using imregister, Matlab 2013a)
1 次查看(过去 30 天)
显示 更早的评论
Hi,
I need to estimate the deformation map of an image. I tried using imregister, which worked fine: the images are correctly registered using an affine transform, and I obtain an imref2d object along with it. The problem is that I cannot get the deformation map out of this imref2d object. Here is how I proceeded (from 32 x 32 images):
load data.m % loads the images 'moving' and 'fixed'
[optimizer,met] = imregconfig('multimodal')
optimizer.InitialRadius = 8e-4; % change required for convergence
[im,r_reg] = imregister(moving,fixed,'affine',optimizer,met);
x = 1:32;
y = 1:32;
[X,Y] = meshgrid(x,y);
[r,c] = intrinsicToWorld(r_reg,X(:),Y(:));
The coordinates [r,c] are exactly the same as [X(:),Y(:)] even though the images are very different (one is a circle, the other is a twisted ellipse). What am I doing wrong? Has anyone used these imref2d objects before?
LB
1 个评论
回答(2 个)
David Young
2014-12-11
I think from the documentation you need imregtform() rather than imregister() to get the transform itself rather than the result of applying it.
1 个评论
另请参阅
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!