Error while averaging multiple images

I am averaging a set of tif images and here is a code for the same-
addpath('D:\SMM\SLIPI\Images');
files = dir('D:\SMM\SLIPI\Images\*.tif');
numberOfImages = size(files);
for k = 1:numberOfImages
thisImage = double(imread(files(k).name)); % Or whatever...
[rows, columns, numberOfColorBands] = size(thisImage);
% First do a check for matching rows, columns, and number of color channels. Then
if k == 1
sumImage = thisImage;
else
sumImage = sumImage + thisImage;
end
end
sumImage = sumImage./ numberOfImages;
But I am getting following error-
>> low_energy_sequ
Matrix dimensions must agree.
Error in low_energy_sequ (line 14)
sumImage = sumImage./ numberOfImages;
Can somebody please help with this?
Thanks in advance..

 Réponse acceptée

Rik
Rik le 9 Août 2021
The size function returns a vector of at least two elements
numberOfImages = size(files);
%replace this by:
numberOfImages = numel(files);

Plus de réponses (0)

Catégories

En savoir plus sur Images dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by