MATLAB: Why do i receive the error when i try to use this function movingRegisteredDefault to do intensity based image registration method movingRegisteredDefault. What is ‘ VARARGIN’. Where can i get MRI image used for intensity based image registration

digital image processingimageoptimizationsimulation

fixed = imread('webcam image.jpg');
moving = imread('IR image.jpg');
figure, imshowpair(moving, fixed, 'montage')
title('Unregistered')
figure, imshowpair(moving, fixed)
title('Unregistered')
[optimizer,metric] = imregconfig('multimodal');
disp(optimizer)
disp(metric)
registration.optimizer.OnePlusOneEvolutionary
Properties:
GrowthFactor: 1.050000e+00
Epsilon: 1.500000e-06
InitialRadius: 6.250000e-03
MaximumIterations: 100
registration.metric.MattesMutualInformation
Properties:
NumberOfSpatialSamples: 500
NumberOfHistogramBins: 50
UseAllPixels: 1
movingRegisteredDefault = imregister(moving, fixed, 'affine', optimizer, metric);
Error using imregtform>parseInputs (line 254)
The value of 'MovingImage' is invalid. All dimensions of the moving image
should be greater than 4.
Error in imregtform (line 123)
parsedInputs = parseInputs(varargin{:});
Error in imregister (line 118)
tform = imregtform(varargin{:});

Best Answer

When you did
moving = imread('IR image.jpg');
somehow moving ended up with fewer than 4 rows or fewer than 4 columns. You should check with size(moving)