How we can calculculate the MTF from PSF?
    43 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
I want to calculate the MTF from this PSF. 
1 comentario
  Rik
      
      
 el 3 de Ag. de 2025
				You can find guidelines for posting homework on this forum here. If you have trouble with Matlab basics you may consider doing the Onramp tutorial (which is provided for free by Mathworks). If your main issue is with understanding the underlying concept, you may consider re-reading the material you teacher provided and ask them for further clarification.
In this case you forgot to ask an actual question in this post. However your message contained more information:
[the message below was sent around the time this question was posted]
Dear sir, I need your help on how to calculate the MTF from PSF in the MATLAB code. I am in a deadline condition. I am able to generate the PSF but am not able to generate the MTF. Please help me.
I need this type of MTF figure from my code
NUM= 1080;
pixel=6.4e-6;
aa=NUM*pixel/2;
lambda=0.532e-6;
y=(-NUM/2:1:NUM/2-1);
[x,y]=meshgrid(x,y);
M=ones(NUM,NUM);
M0=imread('c.bmp');
M0=double(M0);
M0=M0./max(max(M0));
M0=1-M0;
f= 0.18632;
z0=f;
h0=exp(1i*2*pi*z0*sqrt(1/(lambda)^2-(x/(NUM*pixel)).^2-(y/(NUM*pixel)).^2));
E0=ifft2(fftshift(fftshift(fft2(M.*exp(1i*HZP))).*h0));
psfHZP=abs(E0).^2;
[a,b]=max(max(psfHZP));
% Normalize the PSF
psfHZP_normalized = psfHZP / max(psfHZP(:));
% Display the normalized PSF
imagesc(psfHZP_normalized);
title('PSF HZP');
axis image;
%
[a1, b1]=max(max(psfHZP));
figure(10)
plot(psfHZP(:,b1));
title('HZP psf');
I am able to generate PSF, so how can I generate the MTF from this PSF .
Ver también
Categorías
				Más información sobre Image Processing Toolbox en Help Center y File Exchange.
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


