Random semi-related question I was thinking about last night:
Could you:
1) make a coarse "random" mirror that was bumpy at the large scale
2) buff out all the fine texture so you get clear fragments of an image all across the lens at random focal planes
3) put it on a track with a LCD screen on one side and a camera on the other
4) use some sort of gradient descent algorithm to move the image and camera around and reverse engineer the normal map for the lens
5) Use that displacement map to generate a light field from an image
6) Use the light field to generate any (clear, in focus) image you want in the light field volume.
In other words, can you make a Very Bad but Smooth lens, and then make up for it in software?
My guess: you could, but for any given focal plane you'd recover very little resolution because probabalistically few of the microlens fragments are focused there.
Yes, that is considered a 'solved' problem, but the costs and market for such devices limits their wide-spread use. Typically they are used for nanoscopes and telescopes. There are a few purveyors, but add 2 0s to the end of whatever you think the cost should be.
The limiting factor is the light coming in and having a 'known' value to measure your noise against. In telescopes, this is typically a 'guide' star that has a very well calibrated light spectrum and positions that you can measure the noise values against.
Could you:
1) make a coarse "random" mirror that was bumpy at the large scale
2) buff out all the fine texture so you get clear fragments of an image all across the lens at random focal planes
3) put it on a track with a LCD screen on one side and a camera on the other
4) use some sort of gradient descent algorithm to move the image and camera around and reverse engineer the normal map for the lens
5) Use that displacement map to generate a light field from an image
6) Use the light field to generate any (clear, in focus) image you want in the light field volume.
In other words, can you make a Very Bad but Smooth lens, and then make up for it in software?
My guess: you could, but for any given focal plane you'd recover very little resolution because probabalistically few of the microlens fragments are focused there.