Problem accessing the deformation map in image registration (using imregister, Matlab 2013a)
이전 댓글 표시
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
Simson Hutagalung
2022년 6월 24일
How to generate deformation colormap 2D in matlab with data from excel?
답변 (2개)
David Young
2014년 12월 11일
1 개 추천
I think from the documentation you need imregtform() rather than imregister() to get the transform itself rather than the result of applying it.
댓글 수: 1
Sean de Wolski
2014년 12월 11일
Yes, you can then pass the transformation matrix into imwarp directly.
Lionel
2014년 12월 12일
0 개 추천
댓글 수: 1
Sean de Wolski
2014년 12월 12일
Please accept David's answer to mark the question complete!
카테고리
도움말 센터 및 File Exchange에서 Geometric Transformation and Image Registration에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!