\section{Problems} \begin{frame} \centering \Huge Problems \end{frame} \subsection{Why differentiable rendering is hard} \begin{frame}{Why differentiable rendering is hard} \begin{itemize} \item Rendering integral contains the geometry term that is not differentiable \item The gradiant of the visibility can lead to dirac delta terms which have 0 probability of being sampled correctly [\cite{ACM:diracdelta},\cite{ACM:diffable_raytracing}] \item Differentiation with respect to certain scene parameters possible but we need to differentiate with respect to any scene parameter \end{itemize} \pause \begin{center} \begin{minipage}{0.4\linewidth} \begin{figure} \centering \begin{minipage}{0.5\linewidth} \begin{tikzpicture}[domain=-0.5:2] \draw[very thin,color=gray] (-0.1,-0.6) grid (2.1,2.1); \draw[->] (-0.2,-0.5) -- (2.2,-0.5) node[right] {$\omega$}; \draw[->] (0,-0.7) -- (0,2.2) node[above] {$V(x,\omega)$}; \draw (0,0) -- (1,0) plot coordinates {(0,0) (1,0)}[color=red]; \draw (1,1) -- (2,1) plot coordinates {(1,1) (2,1)}[color=red]; \draw (0,0) node[left] {$0$}; \draw (0,1) node[left] {$1$}; \draw (1,-0.7) node[below] {$\omega_0$}; \end{tikzpicture} \end{minipage} \hspace{3mm} \begin{minipage}{0.4\linewidth} \caption{Visibility of a point $x$ with respect to $\omega$. Observe the discontinuity at $\omega_0$.} \label{fig:visibility} \end{minipage} \end{figure} \end{minipage} % second diagram \begin{minipage}{0.5\linewidth} \begin{figure} \centering \begin{minipage}{0.5\linewidth} \begin{tikzpicture}[domain=-0.5:2] \draw[very thin,color=gray] (-0.1,-0.6) grid (2.1,2.1); \draw[->] (-0.2,-0.5) -- (2.2,-0.5) node[right] {$\omega$}; \draw[->] (0,-0.7) -- (0,2.2) node[above] {$\frac{\partial}{\partial\omega}V(x,\omega)$}; \draw (0,0) -- (2,0) plot coordinates {(0,0) (2,0)}[color=red]; \draw (0,0) node[left] {$0$}; \draw (0,1) node[left] {$1$}; \draw (0,2) node[left] {$\infty$}; \draw (1,2) node[color=red] {$\bullet$}; \draw (1,-0.7) node[below] {$\omega_0$}; \end{tikzpicture} \end{minipage} \begin{minipage}{0.4\linewidth} \caption{Differentiation of the left graph with respect to $\omega$. Observe the discontinuity at $\omega_0$ in the left graph leading to a dirac delta spike at $\omega_0$ in the differentiation.} \label{fig:dirac-delta-spike} \end{minipage} \end{figure} \end{minipage} \end{center} \end{frame} \begin{frame}{Geometry term} \centering \begin{minipage}{0.4\linewidth} \includegraphics[width=\linewidth]{presentation/img/blockers.png} \end{minipage} \hspace{15mm} \begin{minipage}{0.4\linewidth} \includegraphics[width=\linewidth]{presentation/img/blockers_diff.png} \end{minipage} \end{frame} \subsection{Former methods} \begin{frame}{Former methods} \begin{block}{Previous differentiable renderers considered by this paper} \begin{itemize} \item OpenDR [\cite{DBLP:OpenDR}] \item Neural 3D Mesh Renderer [\cite{DBLP:Neural3DKatoetal}] \item Both rasterization based (first render the image using rasterization, then approximate the gradients using the resulting color buffer) \item Focused on speed rather than precision \end{itemize} \end{block} \end{frame} \begin{frame}{Former methods - visualization} \begin{figure} \begin{minipage}{0.12\linewidth} \begin{figure} \centering \includegraphics[width=\linewidth]{presentation/img/comparisons/plane.png} \caption{planar scene} \label{fig:planar-scene} \end{figure} \end{minipage} \hspace{2mm} \begin{minipage}{0.12\linewidth} \begin{figure} \centering \includegraphics[width=\linewidth]{presentation/img/comparisons/opendr.png} \caption{OpenDR} \label{fig:grad-OpenDR} \end{figure} \end{minipage} \hspace{2mm} \begin{minipage}{0.12\linewidth} \begin{figure} \centering \includegraphics[width=\linewidth]{presentation/img/comparisons/Neural.png} \caption{Neural} \label{fig:grad-Neural3DMesh} \end{figure} \end{minipage} \hspace{2mm} \begin{minipage}{0.12\linewidth} \begin{figure} \centering \includegraphics[width=\linewidth]{presentation/img/comparisons/ours.png} \caption{this paper} \label{fig:grad-this} \end{figure} \end{minipage} \hspace{4mm} \begin{minipage}{0.3\linewidth} \caption{ %A plane lit by a point light source. Images visualize a gradient with respect to the plane moving right. Since the light source remains static the gradient should only be $\ne 0$ at the boundaries. OpenDR and Neural are not able to correctly calculate the gradients as they are based on color buffer differences.\\ Visualizations of gradients calculated by different differentiable renderers.\\ Images: \cite{ACM:diffable_raytracing} } \label{fig:grad-explanation} \end{minipage} \end{figure} \pause $\implies$ Problems are caused at the edges and by approximation using color buffers \end{frame}