Clear Filters
Clear Filters

Align pre- and post- scans using imregister

3 views (last 30 days)
Julia
Julia on 22 Jul 2014
Edited: Julia on 22 Jul 2014
I am trying to align pre- and post treatment scans in order to highlight the differences. After adding a contrast agent there are more structures visible and I want to display just these ones that occur in the post scan, but not in the pre scan. I have attached both scans. Eventually I will work with 3D matrices. I am rotating the post scan and get close to a match, but despite using the command imregister I can't get the two pictures to fully match. I am using the following commands and am happy for any hints and recommendations. Thanks.
A= imread('11Tpre (296).jpg');
A = rgb2gray (A);
A = imcrop (A,[345 390 1179 1179]); %cropping image to a 1180 x 1180
B= imread('11Tpost (272).jpg');
B = rgb2gray (B);
B = imcrop (B,[435 370 1179 1179]); %cropping image to a 1180 x 1180
B = imrotate (B, 27.2,'bilinear', 'crop')
figure
imshow (A)
figure
imshow(B)
% View misaligned images
imshowpair(A,B,'Scaling','joint');
% Get a configuration suitable for registering images from different
% sensors.
[optimizer, metric] = imregconfig('multimodal')
% Tune the properties of the optimizer to get the problem to converge
% on a global maxima and to allow for more iterations.
optimizer.InitialRadius = 0.009;
optimizer.Epsilon = 1.5e-4;
optimizer.GrowthFactor = 1.01;
optimizer.MaximumIterations = 300;
% Align the moving image with the fixed image
Breg = imregister (B,A,'affine', optimizer, metric);
% View registered images
figure
imshowpair(A,Breg,'Scaling','joint');

Answers (0)

Categories

Find more on Image Processing Toolbox in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!