Optical modulation transfer function of an image and its cutoff

AI Thread Summary
The discussion focuses on calculating the cutoff spatial frequency of an image using the modulation transfer function (MTF). Participants emphasize the importance of the diffraction limit of the lens and the Nyquist frequency of the sensor in determining spatial frequency limits. To convert pixel values to cycles per meter (cy/m), one must consider the pixel size and the scaling of frequency values based on the number of image pixels used. Measuring the optical transfer function (OTF) involves imaging a sharp edge to obtain the line spread function, which can then be transformed into the OTF. Care must be taken to account for pixel size effects and potential aliasing when interpreting the results.
chis54
Messages
5
Reaction score
0
I have an image taken with a camera. I know the f/#, focal length, CCD characteristics, and an approximate distance to my scene. I computed the modulation transfer function but I am trying to map the pixel space to cy/m and having trouble. I essentially want to determine the cutoff spatial frequency. Any tips on how to do this?
 
Science news on Phys.org
The limitation on the spatial frequency will be set either by the diffraction limit of the lens (see the Raleigh criterion) or by the Nyquist frequency of the sensor. You should be able to compute those given the data you have.
 
voko said:
The limitation on the spatial frequency will be set either by the diffraction limit of the lens (see the Raleigh criterion) or by the Nyquist frequency of the sensor. You should be able to compute those given the data you have.

My image is 1024x1024 and after computing the MTF, integrating it about theta from 0 to 2pi, I have a plot from 0 to 512 in pixels on my x-axis. I think I divide my pixel value by my ccd pixel size and that will have my x-axis in cy/m. Am I thinking of that correctly?
 
I don't understand what you are trying to accomplish. I understand what spatial frequency and cutoff spatial frequency are, but "mapping pixel space to cy/m" means nothing to me.
 
voko said:
I don't understand what you are trying to accomplish. I understand what spatial frequency and cutoff spatial frequency are, but "mapping pixel space to cy/m" means nothing to me.

Just converting the x-axis from pixels to cylces/m
 
The x-axis is the spatial frequency, correct? Then how come it is in pixels? Did you mean cycles/pixel?
 
voko said:
The x-axis is the spatial frequency, correct? Then how come it is in pixels? Did you mean cycles/pixel?

yes, yes
 
chis54 said:
I have an image taken with a camera. I know the f/#, focal length, CCD characteristics, and an approximate distance to my scene. I computed the modulation transfer function but I am trying to map the pixel space to cy/m and having trouble. I essentially want to determine the cutoff spatial frequency. Any tips on how to do this?

You can calculate the cutoff frequency directly (assuming diffraction-limited performance, etc.) with the information you already have- the entrance pupil diameter 'd' is given by the focal length and f/#, and the cutoff frequency for coherent imaging is f_c = d/(2*λ*f), where λ is the wavelength and f the focal length of the lens. For incoherent imaging, the cutoff frequency is twice that of coherent imaging.

Measuring the OTF directly from an image requires some care, but is straightforward. The procedure I use is to image a sharp edge (a sharp black-to-white transition) and differentiate the image to obtain the line spread function. The OTF (in one direction) is the Fourier transform of the LSF, but the specific frequency values (in 1/pixels) will scale with how many image pixels you used. Correct for that, and then knowing the pixel size, you can obtain the OTF in image space (in, for example, cycles/mm). If you then want the OTF in object space ('resolution limits'), you need to know the magnification of the lens.

Does this help?
 
Andy Resnick said:
You can calculate the cutoff frequency directly (assuming diffraction-limited performance, etc.) with the information you already have- the entrance pupil diameter 'd' is given by the focal length and f/#, and the cutoff frequency for coherent imaging is f_c = d/(2*λ*f), where λ is the wavelength and f the focal length of the lens. For incoherent imaging, the cutoff frequency is twice that of coherent imaging.

Measuring the OTF directly from an image requires some care, but is straightforward. The procedure I use is to image a sharp edge (a sharp black-to-white transition) and differentiate the image to obtain the line spread function. The OTF (in one direction) is the Fourier transform of the LSF, but the specific frequency values (in 1/pixels) will scale with how many image pixels you used. Correct for that, and then knowing the pixel size, you can obtain the OTF in image space (in, for example, cycles/mm). If you then want the OTF in object space ('resolution limits'), you need to know the magnification of the lens.

Does this help?

Yes, thank you
 
  • #10
Andy Resnick said:
You can calculate the cutoff frequency directly (assuming diffraction-limited performance, etc.) with the information you already have- the entrance pupil diameter 'd' is given by the focal length and f/#, and the cutoff frequency for coherent imaging is f_c = d/(2*λ*f), where λ is the wavelength and f the focal length of the lens. For incoherent imaging, the cutoff frequency is twice that of coherent imaging.

Measuring the OTF directly from an image requires some care, but is straightforward. The procedure I use is to image a sharp edge (a sharp black-to-white transition) and differentiate the image to obtain the line spread function. The OTF (in one direction) is the Fourier transform of the LSF, but the specific frequency values (in 1/pixels) will scale with how many image pixels you used. Correct for that, and then knowing the pixel size, you can obtain the OTF in image space (in, for example, cycles/mm). If you then want the OTF in object space ('resolution limits'), you need to know the magnification of the lens.

Does this help?

Presumably that only works if your OTF dominates over the effects of the pixel size, otherwise you'll be making a non-stationary measurement of the pixel transfer function.

To get the true pre-sampling OTF you need to tilt the edge and interpolate.
 
  • #11
mickybob said:
Presumably that only works if your OTF dominates over the effects of the pixel size, otherwise you'll be making a non-stationary measurement of the pixel transfer function.

To get the true pre-sampling OTF you need to tilt the edge and interpolate.

To be sure, there are a lot of subtleties I glossed over- the point spread function may vary over the field of view, there may be aliasing due to the spatial frequencies of the sampling, etc. etc.
 
Back
Top