close all
clear
clc
Num=input('输入生成的散斑数Num:');
Height=input('图像的高度Height:');
Wide=input('图像的宽度Wide:');
I0=input('每个散斑的最大光强:');
R=input('散斑的尺寸R:');
A=zeros(Num,2);
I=zeros(Height,Wide);
Y=zeros(Height,Wide);
xk=randi([1,Height],Num,1);
yk=randi([1,Wide],Num,1);
A(:,1)=xk;
A(:,2)=yk;
for m=1:Num
for i=1:Wide
for j=1:Height
Y(i,j)=I0*(exp(-((((i-xk(m)).^2)+((j-yk(m)).^2)))/R^2));%*&+
end
end
I=I+Y;
clear Y
Y=zeros(Height,Wide);
end
imshow(I,[]);
imwrite(uint8(I),'1.bmp');
评论1