I was trying to average 20 schlieren images. For that i wrote this code. But i am getting a white image as output image after averaging. Please help me with this. Thank you

4 ビュー (過去 30 日間)
numImages=20;
myFolder = 'D:\postprocessing\OR 3 NPR 3.5 flatplate _C001H001S0001';
if ~isdir(myFolder)
errorMessage = sprintf('Error: The following folder does not exist:\n%s', myFolder);
uiwait(warndlg(errorMessage));
return;
end
filePattern = fullfile(myFolder, '*.tif');
tiffFiles = dir(filePattern);
for k = 1:length(tiffFiles(1:20))
baseFileName = tiffFiles(k).name;
fullFileName = fullfile(myFolder, baseFileName);
fprintf(1, 'Now reading %s\n', fullFileName);
imageArray = imread(fullFileName)
[m,n]=size(imageArray);
out=zeros(m,n);
for i = 1:m
for j = 1:n
out(i,j) = out(i,j) + imageArray(i,j);
j = j+1;
end
i = i+1;
end
k = k+1;
end
out1 = out/20;
imshow(out1)

回答 (1 件)

KALYAN ACHARJYA
KALYAN ACHARJYA 2020 年 11 月 24 日
numImages=20;
myFolder = 'D:\postprocessing\OR 3 NPR 3.5 flatplate _C001H001S0001';
if ~isdir(myFolder)
errorMessage = sprintf('Error: The following folder does not exist:\n%s', myFolder);
uiwait(warndlg(errorMessage));
return;
end
filePattern = fullfile(myFolder, '*.tif');
tiffFiles = dir(filePattern);
result=0;
for k = 1:length(tiffFiles(1:20))
baseFileName = tiffFiles(k).name;
fullFileName = fullfile(myFolder, baseFileName);
fprintf(1, 'Now reading %s\n', fullFileName);
imageArray = imread(fullFileName)
im_add=result+imageArray;
end
out1 =im_add/20;
imshow(out1,[])

カテゴリ

Help Center および File ExchangeImage Processing Toolbox についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by