# how to get MTF from PSF

339 views (last 30 days)

Show older comments

Hi guys,

Can you please tell me how can I get MTF from the PSF. PSF is the matrix of 400X400 taken from the camera. Please see attached mat file.

Thank you very much.

##### 2 Comments

Rik
on 14 May 2020

### Answers (4)

Bjorn Gustavsson
on 14 May 2020

The MTF is simply the absolute of the Fourier-transform of the PSF. That is:

MTF = abs(fftshift(fft2(psf)));

Just a couple of question. If you have the PSF why do you want the MTF? What are you going to use the MTF for that you couldn't do with the PSF?

HTH

##### 2 Comments

Rik
on 14 May 2020

Comment posted as answer by Dimani4:

I know that, what about the matlab function of psf2otf (https://www.mathworks.com/help/images/ref/psf2otf.html)? I try to use this function (psf2otf) but what I get is the 2D intensity picture. I dont understand what that function means... MTF should be the graph normalized to 1 and the units should be 1/cm. Should I do profile to this picture? But the profile I get it in pixels units?

I just dont understand how can I approach to such a task...

Just a couple of question. If you have the PSF why do you want the MTF? What are you going to use the MTF for that you couldn't do with the PSF?

I'm just curious about what else I can learn about the point source.

Thank you.

Bjorn Gustavsson
on 14 May 2020

Yes, that OTF would be in 1/pixels units, it has to be since the function is goven no information about how large your PSF-image is in the real world. You'll have to convert to wave-numbers in 1/cm yorself, since you know about the image.

In my opinion they are nothing but a Fourier-pair, and I've nver been able to extract additional information from the OTF/MTF than from the PSF. When looking at my PSFs I typically plot row and column-cuts through the centre, I try to look at the PSF at different locations in the image - since the OTF-concept requires a shift-invariant PSF in the first place.

(Since I work with aberration-limited optical systems I cannot use OTF/MTF, and dislike them...)

My pleasure

adi
on 5 Nov 2020

Edited: adi
on 5 Nov 2020

Hi all,

i saw all your comments and thought that maybe you can help me too.

i have the 3D MTF as in the attached image.if i understand correctly its in [1/pixel] units .

i want to convert this 3D MTF to the common 2D MTF as in the image attached.

Does anybody knows how to do it?

thanks in advance

##### 9 Comments

Bjorn Gustavsson
on 17 Feb 2021

onur cicek
on 5 Aug 2021

Mustela
on 26 Aug 2021

##### 1 Comment

Bjorn Gustavsson
on 26 Aug 2021

@Mustela, yes I do rant on that. By looking at the PSF (or cuts through it) I can easily judge how small structures my imaging system can resolve and how large separations need to be, typically varying between different parts of my images. The images I analyse I never extract information of interest from certain Fourier-components, therefore it is more natural for me to think about how the PSF in a region blur an ideal image than look at how the contrast varies with spatial frequencies. What you mention as "contrast vs frequency" as something that cannot be achieved from the PSF I would instantly gather from the sum of PSFs from gradually separated pixels except this approach can be rigorously done without worries. When you look at the MTF for sub-regions of the image you would still make the assumption/approximation that the PSF is shift-invariant over that regionn (between you and me, I'd say that you implicitly admitt that it is not, and I'll have to admitt that it still most likely is a good enough assumption).

My main "attitude problem" might be that since I seek the information about object in the spatial domain it is more striahgt-forward to look at the PSF-blurring as a convolution-type operation than a multiplication in the Fourier-domain.

### See Also

### Categories

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!