diff --git a/handout/handout.tex b/handout/handout.tex index 9f5850a..1eea0ce 100644 --- a/handout/handout.tex +++ b/handout/handout.tex @@ -66,10 +66,10 @@ To formalize the problem of photo realistic image synthesis, an equation has bee I(x,x^{\prime})= g(x,x') \left[ - \epsilon(x,x')+\int_S \rho(x,x',x'')I(x',x'')dx'' - \right] + \epsilon(x,x')+\int_S \rho(x,x',x'')I(x',x'')dx'' + \right] \notag - \label{eq:rendering_integral} + \label{eq:rendering_integral} \end{equation} \caption{The rendering equation capturing physical light transport. It assigns a value to the the Intensity of light transported from a point $x$ to a point $x^\prime$. The geometry term $g$ will be discussed later. The term $\epsilon$ accounts for the emissivity of the material at point $x$. The integral term represents all light scattered from any other point in the scene towards the point $x$. The integral domain $S$ contains all points in the scene.} \end{figure} @@ -128,6 +128,22 @@ Mathematically this yields that the Integral can be separated into two parts. On The main application of differentiable ray tracing discussed in the paper is inverse rendering. That is: Given images of a scene, synthesize a 3D representation of that scene. To do this an error function $e: \Phi\mapsto\mathbb{R}$ that measures how close an approximate render is to a target image with respect to a set of scene parameters $\Phi$ is required.\\ Given this function and a set of target images the inverse rendering problem can be solved using differentiable rendering. The first step is to render an approximation of the scene differentiably. The resulting images are then compared to the target images by calculating the error. Since the rendering process is differentiable the gradient of the error function can be calculated, allowing for a minimization of the error function using a process such as stochastic gradient descent. +\begin{figure}[h] + \centering + \subfloat[initial guess]{ + \includegraphics[width=0.3\linewidth]{../presentation/img/results/guess.png} + } + \subfloat[optimized result]{ + \includegraphics[width=0.3\linewidth]{../presentation/img/results/result.png}\label{fig:result_image} + } + \subfloat[target]{ + \includegraphics[width=0.3\linewidth]{../presentation/img/results/photo.png} + } + \caption{A generic example for how differentiable ray tracing can be used to approximate a solution for the inverse rendering problem.}\label{fig:inverse_rendering_example} +\end{figure} + +An example for how this might look is given in figure~\ref{fig:inverse_rendering_example}. The optimized image (figure~\ref{fig:inverse_rendering_example}, image~\ref{sub@fig:result_image}) has been generated by the authors using differentiable ray tracing and an ADAM gradient descent optimizer. +From this image it is evident that the algorithm can handle a multitude of rendering phenomena, such as e.g.\ primary occlusion, emission and glossy receivers. % BIBLIOGRAPHY \nocite{*} % List all entries of the .bib file, even those not cited in the main body \printbibliography{}