MATLAB Answers

Registation of two images in '.mat' format

2 views (last 30 days)
AUWAL ABUBAKAR on 18 Oct 2020
Commented: AUWAL ABUBAKAR on 19 Oct 2020
Good day all,
Could someone please help me on how to register two images in '.mat format. Each .mat variable is 36x129 with each element representing a distance value. When plotted using 'surf plot' it gives a chest surface images.
I would like to register the two surafces and obtain the difference in the surafce positions. Below is the code i used so far but returns a warning.. ' Registration failed because optimization diverged'
[optimizer, metric] = imregconfig('multimodal');
img_reg = imregister(img1, img2, 'affine', optimizer, metric);
imshowpair(img2, img_reg,'falsecolor');
Attached are the variables and the suraface image obtained when surf plot is used


Sign in to comment.

Accepted Answer

Matt J
Matt J on 18 Oct 2020
With monomodal registration, it works fine for me,
[optimizer, metric] = imregconfig('monomodal');
but I should mention that the two images look almost identical to begin with.


Show 2 older comments
AUWAL ABUBAKAR on 18 Oct 2020
I mean the difference between the two images. The difference is what I regarded as the position error and I need to display. What I do currently is to subtract img1 from img2 and display the difference.
Matt J
Matt J on 18 Oct 2020
Because you have done an affine registration, the position error is different for every point, but you can obtain the estimated tform relating the images using imregtform
tform = imregtform(img1, img2, 'affine', optimizer, metric);
AUWAL ABUBAKAR on 19 Oct 2020
Thanks alot. Really help, I appreciate.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!