Skip to main content
Question

Object space and image space plots


Ian
Forum|alt.badge.img
  • Infrared
  • 14 replies
I frequently need to determine the MTF of a lens in object space rather than image space.  I would find it a big help to be able to have a check box for "object space, image space".

It is easier to present to customers in object space because they can relate to the dimensions. 

Also I often need to check the resolution over a focus range (in object space).  It's a bit tedious repeatedly working out the magnification at each focus range to scale the MTF into object space. 

10 replies

David Nguyen
Zemax Staff
  • Zemax Staff
  • 23 replies
  • September 20, 2019
Hi Ian,


Have you tried using a macro, or the ZOS-API to scale the MTF in object space automatically?

I can imagine you could have a user-extension that picks up your MTF settings and replots it scaled by the magnification of your system.

Does that make sense?


Cheers.

Ian
Forum|alt.badge.img
  • Author
  • Infrared
  • 14 replies
  • September 20, 2019
David,
I'm sure I could do that.  I just thought it would be a feature that most users would want.

Ian

I think that's a good idea Ian. It lets you specify the resolution of the lens in terms of the think being looked at, not the image at the detector. 

We will be adding an Ideas section to this forum soon, but until then we'll capture this idea in our internal feature request list.

  • Single Emitter
  • 3 replies
  • September 28, 2019

Also I often need to check the resolution over a focus range (in object space).  It's a bit tedious repeatedly working out the magnification at each focus range to scale the MTF into object space.

A quick way is to reverse a system with internal tool and check MTF.

Forum|alt.badge.img
  • Single Emitter
  • 1 reply
  • September 28, 2019

Thank you for adding this suggestion to the feature request list. Can you make that new feature compatible with a tilted object plane?

I routinely work with a model that has a tilted object plane, achieved by using a simple coordinate break. I use the MTF analyses (especially FFT MTF and MTF Map) and manually multiply by the magnification in Excel. But this is tedious because each field point has a different magnification, similar to Ian’s tedium about many focal positions of the object.

I think the MTF analyses (followed by multiplication by magnification) do handle the tilted object, even though I have to place the object and stop on opposite sides of the coordinate break and use ray aiming. In some cases, the tilted object is viewed through a mirror.

These models are just complicated enough (at least to me) that I feel a need to double-check the MTF calculations. The MTF results are only similar to Geometric Image Analysis results (with a resolution target file) and similar to results when I use multiple object distances to simulate the tilted object instead of the tilted object itself. But, there are still nagging differences.

Could you confirm that these cases are properly handled, assuming I do my share of the work correctly?


Ian
Forum|alt.badge.img
  • Author
  • Infrared
  • 14 replies
  • September 29, 2019

Andrey,

You mean the little blue button tool which is often used to reverse a lens element?  That can be used for the whole lens but it's not "quick". 

  1. You have to remember to adjust the aperture setting.  If it's set to image space f/# you have to change it to object space NA and do a calculation or change it to "float by stop size" before reversing.
  2. You have to redefine the field since object is now image and vice versa, and also suffer repeated "cannot determine object coordinates" error message.
  3. You can't include the object space air gap (surface 0 thickness) in the reversing process so you first have to insert a dummy surface for surface 0 and make the object distance surface 1.
  4. If you want to change the object distance (say 10m to 8m) and refocus in a normal set up you can simply do a "quick focus" to adjust the lens to sensor position (ie final air gap).  When reversed you can't simply quick focus what is now the object position (surface 0 thickness).  You first have to set up a merit function and define surface 0 to be a variable.  And after all that you are optimising a lens with a very slow image conjugate which is not ideal.

Alan, It's good to see someone else wants this as well!

A quick drop down menu of image space or object space to reformat the dimensions based on paraxial magnification factor sounds like it should be easy.  I've been trying to think of possible issues.  I guess any system where the magnification is uncertain.  For example, a fish eye lens since the magnification is not a constant with field.  This would need a disclaimer in the manual.


  • Single Emitter
  • 3 replies
  • September 30, 2019
Ian,

Sure these steps can be difficult. But I used them before.
Another option I used was to make additional reverse configuration with pickups.


Of course if it can be done by a simple selector it will be great.

Thorsten.Bothe

Please add my vote for this :-)


Fredrick.South

I need this as well. 

In the meantime, could someone guide me in the right direction for using the ZPL to get MTF scaled to object space?


Kevin Scales
En-Lightened
Forum|alt.badge.img+1
  • En-Lightened
  • 185 replies
  • October 21, 2020

Hi Fredrick,

You can perform work on the MFT using the GETMTF keyword and looping through the frequencies. So, briefly, if you want to do any kind of manipulation on an MTF that has a response out to, say, 50 cycles/mm, you'd have a loop like this:

for i, 1, 1, 50
getmtf i, 0, nfld(), 1, 1, 1
print 'tan', vec1(0)
print 'sag', vec1(1)
! insert your manipulations here
next i

Except for the for loop, this is just the example from the GETMTF help page, which explains the use of the function. For a given frequency and other inputs, it returns the tangential and sagittal data requested. You can process it as it reads in or after you have the whole vector set if you'd rather just save to a different array as you read the values in.


Reply


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings