Image 如何使用MATLAB对一组图像进行平均并将平均后的图像保存为平均图像

Image 如何使用MATLAB对一组图像进行平均并将平均后的图像保存为平均图像,image,matlab,image-processing,Image,Matlab,Image Processing,我有5个数字全息图,我在不同的时间用CCD记录。我想平均5分 我可以通过MATLAB中的以下代码来实现这一点,但我无法像在MATLAB中看到的那样保存文件。相反,我在保存后得到一个白色图像 I0 = imread('snap1.bmp'); sumImage = double(I0); % Inialize to first image. for i=2:10 % Read in remaining images. rgbImage = imread(['snap',num2str(i),'

我有5个数字全息图,我在不同的时间用CCD记录。我想平均5分

我可以通过MATLAB中的以下代码来实现这一点,但我无法像在MATLAB中看到的那样保存文件。相反,我在保存后得到一个白色图像

I0 = imread('snap1.bmp');
sumImage = double(I0); % Inialize to first image.
for i=2:10 % Read in remaining images.
  rgbImage = imread(['snap',num2str(i),'.bmp']);
  sumImage = sumImage + double(rgbImage);
end;
meanImage = sumImage / 5;

figure
imshow(meanImage,[])
imwrite(double(meanImage),'snap10.bmp')

o=imread('snap10.bmp');
figure
imagesc((o))

如果将图像转换为
uint8
,则正确:

imwrite(uint8(meanImage),'snap10.bmp'); % instead of double

此外,求和
1:10
时的平均值是错误的,但将和除以
5

我尝试过,但对于类型为“double”的输入参数,它显示错误未定义函数“unit8”。@sanjeev yes。你打错了
uint8
.Omg!!谢谢:)