Interactive Depth of Field

Michael Kass, Aaron Lefohn, John Owens


Accurate computation of depth-of-field effects in computer graphics rendering is generally very time consuming, creating a problematic workflow for film authoring. The computation is particularly challenging because it depends on large-scale spatially-varying filtering that must accurately respect complex boundaries. Here we introduce an approximate depth-of-field computation that is good enough for film preview, yet can be computed interactively on a GPU. The method makes use of separable recursive filters to create efficient large-kernel convolutions. The individual recursive filters are derived from a minimum principle that produces spatially varying coefficients in the course of solving a tri-diagonal linear system. A straightforward GPU implementation of recursive filters would have poor performance, but using the well-established method of cyclic reduction, we are able to vectorize the computation and achieve interactive frame rates.

Additional materials: [movie.avi]

Available as Pixar Technical Memo #06-01