clear all; close all;
m = 256; n = 256;
a = 50; b = 180;
I = a + (b - a) * rand(m, n);
figure;
subplot(121);
imshow(uint8(I));
title('Generated Image with Random Intensity');
subplot(122);
imhist(uint8(I));
title('Histogram of Generated Image');
解释:
-
clear all; close all;
:清空工作空间中的所有变量并关闭所有图形窗口。 -
m = 256; n = 256;
:定义图像的大小为256x256像素。 -
a = 50; b = 180;
:设置图像的强度范围,从50到180。 -
I = a + (b - a) * rand(m, n);
:生成一个256x256的图像矩阵I
,其中每个像素的值在50到180之间随机分布。 -
figure;
:创建一个新的图形窗口。 -
subplot(121); imshow(uint8(I));
:在第一个子图(1,2,1)中以uint8格式显示生成的图像I
。 -
subplot(122); imhist(uint8(I));
:在第二个子图(1,2,2)中显示生成图像的直方图。
拓展:
- 保存图像和直方图:可以将生成的图像和它的直方图保存为文件。
% 保存生成的图像和直方图
imwrite(uint8(I), 'random_intensity_image.png');
figure;
subplot(121);
imshow(uint8(I));
title('Generated Image with Random Intensity');
subplot(122);
imhist(uint8(I));
title('Histogram of Generated Image');
saveas(gcf, 'histogram_of_generated_image.png');
-
分析图像特性:可以进一步分析生成图像的特性,比如通过计算图像的均值和方差。
-
修改强度范围:可以尝试使用不同的强度范围,来观察对图像的影响。
-
使用不同的随机数分布:可以尝试使用不同的随机数分布,如正态分布等,来生成图像。
-
比较不同强度范围的影响:可以比较不同强度范围对生成图像的影响,以评估不同参数对图像特性的影响。