Linear operation on images
Show older comments
Hey people, I'm trying to add multiple frames to form a single image using the linear operation on images in Matlab. How can I use the "for loop" to add these frames by generally specifying the file names?
Answers (1)
Image Analyst
on 26 Mar 2012
Try this (untested);
counter = 0;
for f = 1 : numberOfFrames
% Get the filename of the next image (somehow).
fullFileName = GetFileName(f); % You write this, of course.
if exist(fullFileName, 'file')
imageArray = imread(fullFileName);
if f == 1
sumImage = single(imageArray);
else
[rowsS columnsS numColorChannelsS] = size(sumImage);
[rowsF columnsF numColorChannelsF] = size(imageArray);
if rowsS == rowsF && columnsS == columnsF && numColorChannelsS == numColorChannelsF
% Sizes match -- it's okay to sum it.
sumImage = sumImage + single(imageArray);
else
% Sizes don't match. Skip it.
uiwait(msgbox('Sizes don't match'));
continue;
end
end
counter = counter + 1;
else
continue; % Image doesn't exist.
end
end
meanImage = sumImage ./ counter;
imshow(meanImage);
1 Comment
NITHIN BHARADWAJ
on 27 Mar 2012
Categories
Find more on Object Analysis 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!