|
|
CMU-CS-25-144 Computer Science Department School of Computer Science, Carnegie Mellon University
Computational Lens Design Arjun Teh Ph.D. Thesis November 2025
Cameras are ubiquitous in modern life, from smartphones to autonomous vehicles. To produce high-quality, aberration-free images, manufacturers invest significant resources in precision lens design in order to produce cameras that meet the demands of all these downstream applications. However, traditional lens design tools are limited to a set of lens design tasks, and the burden of designing lenses is largely placed on an expert designer. The methods developed in this thesis seek to address fundamental limitations of existing lens design tools, which only focus on optimizing continuous parameters of a fixed lens design for sharpness. These contributions enable the optimization of complex lens designs that were previously computationally expensive or impossible to optimize, which allows for designers to more quickly and efficiently explore the vast design space of lenses. Firstly, we develop a method for calculating unbiased gradients of light throughput, enabling the optimization of lens speed. We show previous methods ignore the effect of the lens pupil when calculating gradients and thus result in biased estimates. In order to address the pupil, we devise an object referred to as a warp field that accurately accounts for the effects of the pupil on the objective function. With pupil aware gradients, we enable the direct optimization of lens speed, or light throughput. We demonstrate the effectiveness of our method on a variety of lens design tasks, including enumerating a tradeoff space between throughput and sharpness. Secondly, we develop a Markov chain Monte Carlo (MCMC) method that combines gradient-based optimization of continuous parameters with discrete mutations that change the number of elements in a lens design. A lens with a fixed number of elements is limited by a Pareto front the describes how much throughput and sharpness can be achieved. By allowing the number of elements to change during optimization, we can explore a larger design space and find designs that are better in terms of both throughput and sharpness. We show that our method constitutes a valid sampler and is effective at finding high quality lens designs. Lastly, we address how to add more complicated types of lens elements to our framework. Gradient index lenses are hard to optimize with traditional techniques because of the large number of variables to optimize. We derive a method for calculating gradient through nonlinear ray tracing that has an order of magnitude lower memory requirements than existing methods. This enables our method to explore many different applications of gradient index optics, such as building mutliview displays and building more efficient fiber optics. 101 pages
Thesis Committee:
Jignesh Patel, Interim Head, Computer Science Department
Creative Commons: CC-BY (Attribution)
|
|
Return to:
SCS Technical Report Collection This page maintained by reports@cs.cmu.edu |
|