Linear operation on images
1 次查看(过去 30 天)
显示 更早的评论
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?
0 个评论
回答(1 个)
Image Analyst
2012-3-26
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);
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image Processing Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!