Initial commit

new file:   Copy_of_Exz_with_hamamatsu.m
	new file:   Exz_mod.m
	new file:   Exz_with_hamamatsu.m
	new file:   GS.m
	new file:   MRAF.m
	new file:   MRAF_8bit.bmp
	new file:   PSF of spherical aberration/Exz.m
	new file:   PSF of spherical aberration/Thumbs.db
	new file:   PSF of spherical aberration/josaa-12-10-2136.pdf
	new file:   PSF of spherical aberration/josaa-12-2-325.pdf
	new file:   PSF of spherical aberration/main.m
	new file:   "PSF of spherical aberration/\351\207\215\350\246\201psf\346\226\207\347\214\256.pdf"
	new file:   Spherical_aberration_SiminCao.m
	new file:   gen_m.m
	new file:   gen_rectangle.m
	new file:   hamamatsu.m
	new file:   m.tif
	new file:   m2.tif
	new file:   photo/50-30.BMP
	new file:   photo/8bit_50-30.BMP
	new file:   photo/8bit_ellipse.BMP
	new file:   photo/convert_8bit.exe
	new file:   photo/ellipse.BMP
	new file:   rect_MRAF_SiminCao.m
	new file:   rectangle.tif
	new file:   size/.vscode/settings.json
	new file:   size/black_c_20THSize_4f_1.064lamda.bmp
	new file:   size/black_c_30THSize_4f_61.064lamda.bmp
	new file:   size/black_output.bmp
	new file:   size/black_rect_30THSize_4f_1.064lamda.bmp
	new file:   size/black_rect_30THSize_4f_6_1.064lamda.bmp
	new file:   size/c_20THSize_4f_1.064lamda.bmp
	new file:   size/c_20THSize_4f_1.064lamda_resize.bmp
	new file:   size/c_30THSize_4f_61.064lamda.bmp
	new file:   size/c_30THSize_4f_61.064lamda_resize.bmp
	new file:   size/noisy_output.bmp
	new file:   size/output.bmp
	new file:   size/rect_30THSize_4f_1.064lamda.bmp
	new file:   size/rect_30THSize_4f_1.064lamda_resize.bmp
	new file:   size/rect_30THSize_4f_6_1.064lamda.bmp
	new file:   size/rect_30THSize_4f_6_1.064lamda_resize.bmp
	new file:   size/resize_4.7z
	new file:   size/resize_black.7z
	new file:   size/size copy.py
	new file:   size/size.py
	new file:   size/wave.7z
	new file:   sp.m
	new file:   to8bit.m
	new file:   trans_8bit.zip
	new file:   wavef/A.bmp
	new file:   wavef/B_linear.bmp
	new file:   wavef/PHA SID230828-2003.csv
	new file:   wavef/PHA_bilinear_1280_1024.csv
	new file:   wavef/PHA_bilinear_reversal.csv
	new file:   wavef/PHA_output_1280_1024.csv
	new file:   wavef/Untitled-1.py
	new file:   wavef/filled.bmp
	new file:   wavef/from PIL import Image.py
	new file:   wavef/matrix_filled.csv
	new file:   wavef/output.bmp
	new file:   wavef/output.csv
	new file:   wavef/output2.bmp
	new file:   wavef/pha_wavef copy.py
	new file:   wavef/pha_wavef.py
	new file:   wavef/pha_wavef_step.py
	new file:   wavef/wavef.zip
	new file:   wavef/xy_values.csv
	new file:   "wavef/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/matrix.csv"
	new file:   "wavef/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/matrix_filled.csv"
This commit is contained in:
wxchen
2023-08-29 23:06:40 +08:00
commit ba13a3f053
69 changed files with 1320863 additions and 0 deletions

65
sp.m Normal file
View File

@@ -0,0 +1,65 @@
clc
clear
lambda=1.064; %um
n1=1;
n2=2.585;
d_nom=590; %um
NA=0.65;
alpha=asin(NA);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Phi_sa=@(rho) -2*pi*d_nom*(sqrt(n2^2-(NA*rho).^2)-sqrt(n1^2-(NA*rho).^2))/lambda;
Dn2=@(rho) 2*pi*d_nom*sqrt(n2^2-(NA*rho).^2)/lambda;
phi_ave=integral(@(rho) rho.*Phi_sa(rho),0,1)/integral(@(rho) rho,0,1);
dn2_ave=integral(@(rho) rho.*Dn2(rho),0,1)/integral(@(rho) rho,0,1);
phi_sa_p=@(rho) Phi_sa(rho)-phi_ave;
dn2_p=@(rho) Dn2(rho)-dn2_ave;
s=1/(1+integral(@(rho) phi_sa_p(rho).*dn2_p(rho).*rho,0,1)/integral(@(rho) dn2_p(rho).*dn2_p(rho).*rho,0,1));
R=1/s;
Phi_SA_hat=@(rho) 2*pi*d_nom*(s*sqrt(n1^2-(NA*rho).^2)-sqrt(n2^2-(NA*rho).^2))./(lambda*s);
Phi_SA_hat=@(rho) Phi_SA_hat(rho)-Phi_SA_hat(0)+mod(Phi_SA_hat(0),2*pi)-2*pi;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%rho
pixelx=1280;
pixely=1024;
F=1;
pixel=F*pixely;
%%%%%%%%%%%%%%%%%%%%%%%线F()
[x,y]=meshgrid(1:pixelx,1:pixely);
x=x-(pixelx+1)/2;
y=y-(pixely+1)/2;
D=(pixel-1)/2;
Aperture=(x.^2+y.^2).*4./pixel.^2;
Aperture(Aperture<=1)=1;
Aperture(Aperture>1)=0;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Aperture
rho=(sqrt(x.^2+y.^2)/D).*Aperture;
%Phase=Phi_SA_hat(rho);
offset=-min(min(Phi_SA_hat(rho)));
Phase=Phi_SA_hat(rho)+offset;%
Phase=mod(Phase,2*pi); %
PhaseHolo=round((Phase*255/(2*pi))).*Aperture; %0-255
ApertureN=(x.^2+y.^2).*4./pixel.^2;
ApertureN(ApertureN<=1)=0;
ApertureN(ApertureN>1)=1;
Noise=round(255*rand(pixely,pixelx)).*ApertureN;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%0-255ApertureN
PhaseHolo=PhaseHolo+Noise;%
figure(1)
imshow(PhaseHolo,[])
figure(2)
r1=linspace(-1,1,pixelx);
%plot(r1,PhaseHolo(512,:))
plot(r1,PhaseHolo(512,:)*2*pi/255,'r')
axis([-1,1,0,6*pi])
%%%%%%%%%%%%%%%%%%%%%%%%%%
filename=['','d=',num2str(d_nom),'um','_F=',num2str(F),'.bmp'];
imwrite(uint8(PhaseHolo),filename); %%%%%%%%%%%%%%%%%%%%%%%%%%8