Update on Overleaf.

This commit is contained in:
uxwmp 2023-06-20 20:56:35 +00:00 committed by node
parent 6e5dc2319c
commit 87e71fb35c
9 changed files with 131 additions and 201 deletions

View file

@ -0,0 +1,34 @@
@article{ACM:diffable_raytracing,
author = {Li, Tzu-Mao and Aittala, Miika and Durand, Fr\'{e}do and Lehtinen, Jaakko},
title = {Differentiable Monte Carlo Ray Tracing through Edge Sampling},
year = {2018},
issue_date = {December 2018},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
volume = {37},
number = {6},
issn = {0730-0301},
url = {https://doi.org/10.1145/3272127.3275109},
doi = {10.1145/3272127.3275109},
abstract = {Gradient-based methods are becoming increasingly important for computer graphics, machine learning, and computer vision. The ability to compute gradients is crucial to optimization, inverse problems, and deep learning. In rendering, the gradient is required with respect to variables such as camera parameters, light sources, scene geometry, or material appearance. However, computing the gradient of rendering is challenging because the rendering integral includes visibility terms that are not differentiable. Previous work on differentiable rendering has focused on approximate solutions. They often do not handle secondary effects such as shadows or global illumination, or they do not provide the gradient with respect to variables other than pixel coordinates.We introduce a general-purpose differentiable ray tracer, which, to our knowledge, is the first comprehensive solution that is able to compute derivatives of scalar functions over a rendered image with respect to arbitrary scene parameters such as camera pose, scene geometry, materials, and lighting parameters. The key to our method is a novel edge sampling algorithm that directly samples the Dirac delta functions introduced by the derivatives of the discontinuous integrand. We also develop efficient importance sampling methods based on spatial hierarchies. Our method can generate gradients in times running from seconds to minutes depending on scene complexity and desired precision.We interface our differentiable ray tracer with the deep learning library PyTorch and show prototype applications in inverse rendering and the generation of adversarial examples for neural networks.},
journal = {ACM Trans. Graph.},
articleno = {222},
numpages = {11},
keywords = {differentiable programming, inverse rendering, ray tracing}
}
@inproceedings{ACM:rendering_equation,
author = {Kajiya, James T.},
title = {The Rendering Equation},
year = {1986},
isbn = {0897911962},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
url = {https://doi.org/10.1145/15922.15902},
doi = {10.1145/15922.15902},
abstract = {We present an integral equation which generalizes a variety of known rendering algorithms. In the course of discussing a monte carlo solution we also present a new form of variance reduction, called Hierarchical sampling and give a number of elaborations shows that it may be an efficient new technique for a wide variety of monte carlo procedures. The resulting rendering algorithm extends the range of optical phenomena which can be effectively simulated.},
booktitle = {Proceedings of the 13th Annual Conference on Computer Graphics and Interactive Techniques},
pages = {143150},
numpages = {8},
series = {SIGGRAPH '86}
}

View file

@ -23,14 +23,21 @@
\makeatother \makeatother
% END: DO NOT CHANGE HERE! % END: DO NOT CHANGE HERE!
\title{The Title of Your Talk} \title{Differentiable Monte Carlo Ray Tracing through Edge Sampling}
\author{Your Name} \author{Clemens Dautermann}
\date{02.03.2023} % Put the date of your talk here \date{\today} % Put the date of your talk here
% Bibliography setup % Bibliography setup
\usepackage[citestyle=numeric,bibstyle=numeric,hyperref,backend=biber]{biblatex} \usepackage[citestyle=numeric,bibstyle=numeric,hyperref,backend=biber]{biblatex}
\addbibresource{bibliography.bib} \addbibresource{bibliography.bib}
\usepackage[english]{babel}
\usepackage{csquotes}
\usepackage{amsmath}
\usepackage{tikz}
\usetikzlibrary{calc,patterns,angles,quotes,shapes,arrows, positioning,overlay-beamer-styles}
\usepackage{xcolor} \usepackage{xcolor}
\usepackage{graphicx} \usepackage{graphicx}
@ -41,152 +48,40 @@
\maketitle \maketitle
\begin{abstract} \begin{abstract}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus euismod varius diam, ut maximus neque efficitur quis. Etiam laoreet, nunc sed sagittis tristique, velit velit feugiat metus, id tincidunt tellus turpis ut neque. Pellentesque maximus ex quis massa pretium posuere. Phasellus lacus lacus, egestas laoreet tellus a, ornare egestas arcu. Aliquam at velit ut velit egestas pretium. In a ipsum volutpat, varius magna et, suscipit augue. Nulla eleifend magna quis condimentum dictum. \cite{DBLP:journals/ibmrd/RabinS59} Differentiable Programming is a technique frequently used to solve optimization problems by minimizing some kind of error function. To do this though the error function needs to be differentiable with respect to the parameters that are to be optimized. This is usually not the case with ray tracing. This report will explain why this problem occurs and present the method to tackle it developed in \cite{ACM:diffable_raytracing}.
\end{abstract} \end{abstract}
\section{Introduction} \section{Introduction}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus euismod varius
diam, ut maximus neque efficitur quis. Etiam laoreet, nunc sed sagittis
tristique, velit velit feugiat metus, id tincidunt tellus turpis ut neque.
Pellentesque maximus ex quis massa pretium posuere. Phasellus lacus lacus,
egestas laoreet tellus a, ornare egestas arcu. Aliquam at velit ut velit
egestas pretium. In a ipsum volutpat, varius magna et, suscipit augue. Nulla
eleifend magna quis condimentum dictum.
Nam et risus arcu. Nulla pulvinar nibh risus, eget dignissim ipsum condimentum One of the main tasks in Computer Graphics is image synthesis. This means ``given a 3D scene, output an image depicting the scene``. Often it is required for the image to be as realistic as possible, meaning as close to a picture of the scene as if it was set in the real world as possible. This is most commonly achieved using the ray tracing algorithm and is a well studied problem. Doing this in a differentiable way however is much less trivial. This stems from the fact that the rendering integral (equation \ref{eq:rendering_integral}) is not differentiable in certain well defined places. Because being able to ray trace an image differentiably has numerous applications a solution to this problem has been proposed in \cite{ACM:diffable_raytracing}. This report will go into how exactly this problem arises, how it can be mitigated and what some of the applications of differentiable ray tracing are.
in. Quisque non felis ac sapien consectetur accumsan. Mauris in iaculis arcu.
Nullam sit amet ullamcorper leo, sit amet mattis tortor. Vestibulum molestie
justo non felis mattis semper. Curabitur ac justo nunc. Ut tempus odio est,
vitae fringilla risus eleifend id. Aliquam convallis ante orci, quis consequat
dolor finibus a.
\section{How to cite a reference} \section{Ray Tracing}
To formalize the problem of photo realistic image synthesis, an equation has been proposed by Kajiya in 1986 \cite{ACM:rendering_equation}. This equation captures physical light transport for a scene and if solved yields the color for a given point in the scene accounting for most physical light transport phenomena.
\subsection{Add it to the bibliography} \begin{figure}[h]
\centering
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec ac lobortis \begin{equation}
nibh. Curabitur erat lectus, posuere sit amet dapibus eu, rutrum eget metus. I(x,x^{\prime})=
Maecenas aliquam dapibus sem eget scelerisque. Aliquam nec elementum elit. g(x,x')
Aliquam erat volutpat. Mauris a pretium ex. Proin non magna eget nibh elementum \left[
euismod. Etiam nulla tellus, ullamcorper quis molestie eget, tincidunt eget \epsilon(x,x')+\int_S \rho(x,x',x'')I(x',x'')dx''
urna. Nulla suscipit eros quis ex fringilla iaculis. In mollis ante sed nisi \right]
tincidunt tempor nec at ipsum. Duis mauris ligula, pretium sit amet risus in, \notag
porttitor vestibulum tortor. Nulla ullamcorper ante quis massa semper, vitae \label{eq:rendering_integral}
blandit risus rutrum. Sed sed eros velit. \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 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.}
\paragraph*{Duis} sed augue quis dolor vulputate aliquam. Donec ultrices egestas
felis, ac dignissim lacus ultricies at. Nunc fermentum porta mi, sit amet
mattis purus venenatis at. Etiam nec justo et nunc fermentum ullamcorper ac in
libero. Proin tempor turpis volutpat consequat posuere. Sed aliquam purus vel
mauris rhoncus, in interdum mauris tincidunt. Sed rhoncus eros id risus
convallis, et varius risus ultrices.
\begin{table}[htbp]
\caption{Table Type Styles}
\begin{center}
\begin{tabular}{|c|c|c|c|}
\hline
\textbf{Table} & \multicolumn{3}{|c|}{\textbf{Table Column Head}} \\
\cline{2-4}
\textbf{Head} & \textbf{\textit{Table column subhead}} & \textbf{\textit{Subhead}} & \textbf{\textit{Subhead}} \\
\hline
copy & More table copy$^{\mathrm{a}}$ & & \\
\hline
\multicolumn{4}{l}{$^{\mathrm{a}}$Sample of a Table footnote.}
\end{tabular}
\label{tab1}
\end{center}
\end{table}
\textcolor{red}{We can refer to Table \ref{tab1}.}
Sed viverra sollicitudin tellus sit amet auctor. Sed ut convallis purus. Nulla
non quam vitae est egestas fermentum. Maecenas porta erat at mi luctus
vestibulum. Vestibulum volutpat efficitur augue a maximus. Vestibulum
imperdiet, mi eu facilisis ornare, urna massa dapibus enim, vel fringilla ipsum
tellus ut urna. Vestibulum ante ipsum primis in faucibus orci luctus et
ultrices posuere cubilia curae; Proin malesuada dictum dui, at ornare nisl
blandit a. Phasellus a mauris vitae enim auctor consectetur. Suspendisse
potenti. Morbi porttitor scelerisque hendrerit. Sed congue egestas tellus, eu
congue nulla pulvinar eget.
Nullam lobortis semper neque eget volutpat. In hac habitasse platea dictumst.
Maecenas rhoncus risus vitae pulvinar interdum. Suspendisse faucibus metus
velit, eget posuere elit elementum mollis. Ut dictum eleifend tortor ac
facilisis. Cras ultrices volutpat viverra. Nulla facilisi. Aenean et ornare
urna. Duis pulvinar justo ac nulla pretium porta. Vestibulum ante ipsum primis
in faucibus orci luctus et ultrices posuere cubilia curae; In molestie dapibus
rhoncus. Nam lacinia ex eget dui iaculis faucibus.
Proin lacus nisl, semper vitae ex sed, dignissim ullamcorper quam. Vivamus
volutpat feugiat odio et eleifend. Maecenas interdum, elit et facilisis
commodo, leo est pharetra quam, at elementum dolor risus ut est. Nam eleifend
est sit amet eleifend aliquet. Pellentesque egestas rutrum lectus, cursus
viverra lectus lacinia id. Nunc tincidunt eleifend urna id blandit. Mauris
vestibulum tincidunt augue. Sed feugiat, ante sit amet porttitor pretium, ante
enim rhoncus justo, sit amet suscipit sem tortor et quam. Praesent at sagittis
tortor, id aliquam tortor. Praesent iaculis purus ut dui ultricies ultricies.
Proin gravida pharetra tortor quis sagittis. Fusce gravida consequat ex, ac
sodales diam sodales sodales.
\subsection{Refer to it in the text}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec ac lobortis
nibh. Curabitur erat lectus, posuere sit amet dapibus eu, rutrum eget metus.
Maecenas aliquam dapibus sem eget scelerisque. Aliquam nec elementum elit.
Aliquam erat volutpat. Mauris a pretium ex. Proin non magna eget nibh elementum
euismod. Etiam nulla tellus, ullamcorper quis molestie eget, tincidunt eget
urna. Nulla suscipit eros quis ex fringilla iaculis. In mollis ante sed nisi
tincidunt tempor nec at ipsum. Duis mauris ligula, pretium sit amet risus in,
porttitor vestibulum tortor. Nulla ullamcorper ante quis massa semper, vitae
blandit risus rutrum. Sed sed eros velit.
\begin{figure}[htbp]
\centerline{\includegraphics[width=\columnwidth,keepaspectratio]{Logo_KIT.png}}
\caption{The KIT Logo}
\label{kitlogo}
\end{figure} \end{figure}
This equation (equation \ref{eq:rendering_integral}) is now widely recognized as ``the rendering integral``. It is not analytically solvable and is thus most commonly solved using Monte-Carlo integration - i.e. ray tracing. Ray tracing works by backtracking light rays from the light sources in the scene and thus simulate physically realistic lighting.\\
To do this, rays are cast from the camera, through each pixel in the camera frustum. The intersection point with the scene geometry $x$ is calculated for each ray and material properties (e.g. color, emissivity etc.) are taken into account to calculate the pixel color. From this point more rays are drawn towards each light source. If the light source is visible, its light contributes to the pixel color as well. To account for indirect lighting the ray ``bounces around``, yielding a color for some of the points scattering lights towards $x$. This approximates the integral term in equation \ref{eq:rendering_integral}.\\
Differentiable ray tracing is the task of calculating the gradient of this process with respect to \emph{any} scene parameter.
\textcolor{red}{Note} that the figure will float to the top of the column and is not necessarily \section{Problems with differentiability}
placed where it is included. We may refer to the KIT logo as Figure The geometry term $g(x,x^\prime)$ in equation \ref{eq:rendering_integral} is the main problem when it comes do differentiating the rendering integral. This term is 1 iff $x$ is visible from $x^\prime$, 0 otherwise.
\ref{kitlogo}. \begin{figure}
\centering
Duis sed augue quis dolor vulputate aliquam. Donec ultrices egestas felis, ac \include{presentation/diagrams/edge_sampling.tex}
dignissim lacus ultricies at. Nunc fermentum porta mi, sit amet mattis purus \caption{Caption}
venenatis at. Etiam nec justo et nunc fermentum ullamcorper ac in libero. Proin \label{fig:enter-label}
tempor turpis volutpat consequat posuere. Sed aliquam purus vel mauris rhoncus, \end{figure}
in interdum mauris tincidunt. Sed rhoncus eros id risus convallis, et varius
risus ultrices.
Sed viverra sollicitudin tellus sit amet auctor. Sed ut convallis purus. Nulla
non quam vitae est egestas fermentum. Maecenas porta erat at mi luctus
vestibulum. Vestibulum volutpat efficitur augue a maximus. Vestibulum
imperdiet, mi eu facilisis ornare, urna massa dapibus enim, vel fringilla ipsum
tellus ut urna. Vestibulum ante ipsum primis in faucibus orci luctus et
ultrices posuere cubilia curae; Proin malesuada dictum dui, at ornare nisl
blandit a. Phasellus a mauris vitae enim auctor consectetur. Suspendisse
potenti. Morbi porttitor scelerisque hendrerit. Sed congue egestas tellus, eu
congue nulla pulvinar eget.
\newpage
\textcolor{red}{\emph{Important} Move this newpage command between two pargraphs to approximately equalize the length of the columns on the last page.}
% Make sure that the right column is no longer than the left column.
Nullam lobortis semper neque eget volutpat. In hac habitasse platea dictumst.
Maecenas rhoncus risus vitae pulvinar interdum. Suspendisse faucibus metus
velit, eget posuere elit elementum mollis. Ut dictum eleifend tortor ac
facilisis. Cras ultrices volutpat viverra. Nulla facilisi. Aenean et ornare
urna. Duis pulvinar justo ac nulla pretium porta.
Proin lacus nisl, semper vitae ex sed, dignissim ullamcorper quam. Vivamus
volutpat feugiat odio et eleifend. Maecenas interdum, elit et facilisis
commodo, leo est pharetra quam, at elementum dolor risus ut est. Nam eleifend
est sit amet eleifend aliquet. Pellentesque egestas rutrum lectus, cursus
viverra lectus lacinia id. Nunc tincidunt eleifend urna id blandit. Mauris
vestibulum tincidunt augue. Sed feugiat, ante sit amet porttitor pretium, ante
enim rhoncus justo, sit amet suscipit sem tortor et quam. Praesent at sagittis
tortor, id aliquam tortor. Praesent iaculis purus ut dui ultricies ultricies.
Proin gravida pharetra tortor quis sagittis. Fusce gravida consequat ex, ac
sodales diam sodales sodales.
% BIBLIOGRAPHY % BIBLIOGRAPHY
\nocite{*} % List all entries of the .bib file, even those not cited in the main body \nocite{*} % List all entries of the .bib file, even those not cited in the main body

View file

@ -43,6 +43,7 @@
\end{tikzpicture} \end{tikzpicture}
\end{minipage} \end{minipage}
\begin{minipage}{0.4\linewidth} \begin{minipage}{0.4\linewidth}
\caption{Differentiation of the left graph with respect to $\omega$.}
\caption{Differentiation of the left graph with respect to $\omega$.} \caption{Differentiation of the left graph with respect to $\omega$.}
\label{fig:dirac-delta-spike} \label{fig:dirac-delta-spike}
\end{minipage} \end{minipage}

View file

@ -12,7 +12,7 @@
kit-green100 kit-green100
](0.25,0.25) -- (0.25,1.75) -- (1.75,1.75) -- (1.75,0.25) -- cycle; ](0.25,0.25) -- (0.25,1.75) -- (1.75,1.75) -- (1.75,0.25) -- cycle;
\node[below] at (1,-0.3) {$\uparrow$Sun$\uparrow$}; \node[below] at (1,-0.3) {$\uparrow$sun$\uparrow$};
\only<2>{ \only<2>{
\foreach \x in {0,0.25,...,2}{ \foreach \x in {0,0.25,...,2}{

View file

@ -1,9 +1,9 @@
\section{Basic terms} \section{Basic Terms}
\begin{frame} % \begin{frame}
\centering % \centering
\Huge % \Huge
Basic terms % Basic Terms
\end{frame} % \end{frame}
\subsection{Raytracing} \subsection{Raytracing}
\begin{frame}{Raytracing} \begin{frame}{Raytracing}
\begin{center} \begin{center}
@ -68,13 +68,13 @@
\input{diagrams/raytracing_anim} \input{diagrams/raytracing_anim}
\end{frame} \end{frame}
\begin{frame}{Image synthesis~-~optical phenomena} \begin{frame}{Image synthesis~-~Optical Phenomena}
\centering \centering
\includegraphics[width=0.38\linewidth]{proseminar_cycles_annotated.png} \includegraphics[width=0.38\linewidth]{proseminar_cycles_annotated.png}
\end{frame} \end{frame}
\subsection{Differentiable rendering} \subsection{Differentiable Rendering}
\begin{frame}{Differentiable rendering} \begin{frame}{Differentiable Rendering}
\begin{itemize} \begin{itemize}
\item Given: Function mapping a 3D-scene to a real number (e.g.\ error function) \item Given: Function mapping a 3D-scene to a real number (e.g.\ error function)
\item Target: Calculate gradient of that function \item Target: Calculate gradient of that function

View file

@ -1,10 +1,10 @@
\section{Motivation~-~why differentiable rendering is important} \section{Motivation~-~Why differentiable Rendering is important}
\begin{frame} % \begin{frame}
\centering % \centering
\Huge % \Huge
Motivation~-~why differentiable rendering is important % Motivation~-~Why differentiable Rendering is important
\end{frame} % \end{frame}
\begin{frame}{Importance of differentiable rendering} \begin{frame}{Importance of differentiable Rendering}
\begin{block}{Examples for Applications} \begin{block}{Examples for Applications}
\begin{itemize} \begin{itemize}
\item Learning-based Inverse Rendering of Complex Indoor Scenes \item Learning-based Inverse Rendering of Complex Indoor Scenes
@ -19,8 +19,8 @@ with Differentiable Monte Carlo Raytracing [\cite{ACM:inverse_rendering}]\\
\end{itemize} \end{itemize}
\end{block} \end{block}
\end{frame} \end{frame}
\subsection{Inverse rendering} \subsection{Inverse Rendering}
\begin{frame}{Inverse rendering} \begin{frame}{Inverse Rendering}
\begin{itemize} \begin{itemize}
\item Conventional rendering: Synthesize an Image from a 3D scene \item Conventional rendering: Synthesize an Image from a 3D scene
\item Inverse problem: Synthesize a 3D scene from images \item Inverse problem: Synthesize a 3D scene from images
@ -36,7 +36,7 @@ with Differentiable Monte Carlo Raytracing [\cite{ACM:inverse_rendering}]\\
\end{frame} \end{frame}
\begin{frame}{Inverse rendering~-~current example} \begin{frame}{Inverse Rendering~-~Current Example}
\centering \centering
\includemedia[ \includemedia[
width=0.62\linewidth,height=0.35\linewidth, width=0.62\linewidth,height=0.35\linewidth,
@ -54,12 +54,12 @@ with Differentiable Monte Carlo Raytracing [\cite{ACM:inverse_rendering}]\\
Source:~\cite{ACM:inverse_rendering_signed_distance_function} Source:~\cite{ACM:inverse_rendering_signed_distance_function}
\end{frame} \end{frame}
\subsection{Adversarial image generation} \subsection{Adversarial Image Generation}
\begin{frame}{Adversarial image generation} \begin{frame}{Adversarial Image Generation}
\begin{center} \begin{center}
\begin{minipage}{0.4\linewidth} \begin{minipage}{0.4\linewidth}
\begin{itemize} \begin{itemize}
\item Common Problem in machine learning: Classification\\ \item Common problem in machine learning: Classification\\
$\implies$ Given a set of labels and a set of data, assign a label to each element in the dataset $\implies$ Given a set of labels and a set of data, assign a label to each element in the dataset
\item Labeled data is needed to train classifier network \item Labeled data is needed to train classifier network
\end{itemize} \end{itemize}
@ -73,7 +73,7 @@ with Differentiable Monte Carlo Raytracing [\cite{ACM:inverse_rendering}]\\
\end{minipage} \end{minipage}
\end{center} \end{center}
\end{frame} \end{frame}
\begin{frame}{Adversarial image generation} \begin{frame}{Adversarial Image Generation}
\begin{itemize} \begin{itemize}
\item Problem: Labeling training data is tedious\\ \item Problem: Labeling training data is tedious\\
$\implies$ We want to automatically generate training data $\implies$ We want to automatically generate training data
@ -84,7 +84,7 @@ with Differentiable Monte Carlo Raytracing [\cite{ACM:inverse_rendering}]\\
\end{itemize} \end{itemize}
\end{frame} \end{frame}
\begin{frame}{Adversarial image generation~-~example [\cite{DBLP:journals/corr/abs-1910-00727}]} \begin{frame}{Adversarial Image Generation~-~Example [\cite{DBLP:journals/corr/abs-1910-00727}]}
\begin{center} \begin{center}
\begin{figure} \begin{figure}
\begin{minipage}{0.45\linewidth} \begin{minipage}{0.45\linewidth}
@ -96,8 +96,8 @@ with Differentiable Monte Carlo Raytracing [\cite{ACM:inverse_rendering}]\\
\includegraphics[width=\linewidth]{img/adversarial_rendering_results/incorrect_pedestrian.png} \includegraphics[width=\linewidth]{img/adversarial_rendering_results/incorrect_pedestrian.png}
\end{minipage} \end{minipage}
\centering \centering
\caption{Left: Original images, features are correctly identified.\\ \caption{Left: Original images, features are correctly identified\\
Right: adversarial examples, missing/wrong identifications after only semantic changes} Right: Adversarial examples, missing/wrong identifications after only semantic changes}
\label{fig:adv_img_example} \label{fig:adv_img_example}
\end{figure} \end{figure}
\end{center} \end{center}

View file

@ -1,11 +1,11 @@
\section{Problems} \section{Problems}
\begin{frame} % \begin{frame}
\centering % \centering
\Huge % \Huge
Problems % Problems
\end{frame} % \end{frame}
\subsection{Why differentiable rendering is hard} \subsection{Why differentiable Rendering is hard}
\begin{frame}{Why differentiable rendering is hard} \begin{frame}{Why differentiable Rendering is hard}
\begin{itemize} \begin{itemize}
\item Geometry term \item Geometry term
\item Causes dirac delta terms\\ \item Causes dirac delta terms\\
@ -14,16 +14,16 @@
\item Need to differentiate with respect to any scene parameter \item Need to differentiate with respect to any scene parameter
\end{itemize} \end{itemize}
\end{frame} \end{frame}
\begin{frame}{primary occlusion} \begin{frame}{Primary Occlusion}
\centering \centering
\input{diagrams/diagramm_occlusion.tex} \input{diagrams/diagramm_occlusion.tex}
\end{frame} \end{frame}
\begin{frame}{Angle change $\leftrightarrow$ visibility change} \begin{frame}{Angle change $\leftrightarrow$ Visibility change}
\centering \centering
\input{diagrams/geometry_term_diff.tex} \input{diagrams/geometry_term_diff.tex}
\end{frame} \end{frame}
\subsection{Former methods} \subsection{Former Methods}
\begin{frame}{Former methods} \begin{frame}{Former Methods}
\begin{block}{Previous differentiable renderers considered by this paper} \begin{block}{Previous differentiable renderers considered by this paper}
\begin{itemize} \begin{itemize}
\item OpenDR [\cite{DBLP:OpenDR}] \item OpenDR [\cite{DBLP:OpenDR}]
@ -33,7 +33,7 @@
\end{itemize} \end{itemize}
\end{block} \end{block}
\end{frame} \end{frame}
\begin{frame}{Former methods~-~visualization} \begin{frame}{Former Methods~-~Visualization}
\begin{figure} \begin{figure}
\begin{minipage}{0.12\linewidth} \begin{minipage}{0.12\linewidth}
\begin{figure} \begin{figure}

View file

@ -1,11 +1,11 @@
\section{This method} \section{This Method}
\begin{frame} % \begin{frame}
\centering % \centering
\Huge % \Huge
This method % This Method
\end{frame} % \end{frame}
\subsection{Edge sampling} \subsection{Edge Sampling}
\begin{frame}{Edge sampling} \begin{frame}{Edge Sampling}
\setbeamercovered{transparent} \setbeamercovered{transparent}
\begin{block}{Assumptions} \begin{block}{Assumptions}
\begin{itemize} \begin{itemize}
@ -25,12 +25,12 @@
\end{block} \end{block}
\end{frame} \end{frame}
\begin{frame}{Edge sampling~-~Illustration} \begin{frame}{Edge Sampling~-~Illustration}
\centering \centering
\input{diagrams/edge_sampling} \input{diagrams/edge_sampling}
\end{frame} \end{frame}
\begin{frame}{Edge sampling~-~half spaces} \begin{frame}{Edge Sampling~-~Half Spaces}
\begin{minipage}{0.5\linewidth} \begin{minipage}{0.5\linewidth}
\input{diagrams/halfspaces} \input{diagrams/halfspaces}
\end{minipage} \end{minipage}
@ -46,7 +46,7 @@
\end{minipage} \end{minipage}
\end{frame} \end{frame}
\begin{frame}[t]{Edge sampling~-~math background} \begin{frame}[t]{Edge Sampling~-~Math Background}
Color: Color:
\only<1>{ \only<1>{
\[ \[
@ -65,9 +65,9 @@
Use half spaces to rewrite integral: Use half spaces to rewrite integral:
\[ \[
\sum_i\iint \sum_i\iint
\underbrace{\theta(}_{\text{step function}} \underbrace{\theta(}_{\text{Step function}}
\underbrace{\alpha_i(x,y)}_{\text{Edge equation formed by the triangle edge}}) \underbrace{\alpha_i(x,y)}_{\text{Edge equation formed by the triangle edge}})
\underbrace{f_i(x,y)}_{\text{half space (may contain Heaviside step functions itself)}} \underbrace{f_i(x,y)}_{\text{Half space (may contain Heaviside step functions itself)}}
\] \]
} }
@ -87,7 +87,7 @@
\end{frame} \end{frame}
\begin{frame}{Inverse rendering~-~Results in this paper} \begin{frame}{Inverse Rendering~-~Results in this Paper}
\begin{block}{Inverse rendering here} \begin{block}{Inverse rendering here}
\begin{itemize} \begin{itemize}
\item Parameters: Camera pose, material parameters, light source intensity \item Parameters: Camera pose, material parameters, light source intensity
@ -102,7 +102,7 @@
\end{block} \end{block}
\end{frame} \end{frame}
\begin{frame}{Inverse rendering~-~results in this paper} \begin{frame}{Inverse Rendering~-~Results in this Paper}
\begin{center} \begin{center}
\begin{minipage}{0.25\linewidth} \begin{minipage}{0.25\linewidth}
\begin{figure} \begin{figure}
@ -231,7 +231,7 @@
\end{figure} \end{figure}
\end{frame} \end{frame}
\begin{frame}{Inverse rendering~-~example from this paper} \begin{frame}{Inverse Rendering~-~Example from this Paper}
\centering \centering
\begin{minipage}{0.19\linewidth} \begin{minipage}{0.19\linewidth}
\begin{figure} \begin{figure}
@ -275,7 +275,7 @@
\end{minipage} \end{minipage}
\end{frame} \end{frame}
\begin{frame}{Inverse rendering~-~example from this paper} \begin{frame}{Inverse Rendering~-~Example from this Paper}
\centering \centering
\includemedia[ \includemedia[
width=0.62\linewidth,height=0.35\linewidth, width=0.62\linewidth,height=0.35\linewidth,
@ -293,7 +293,7 @@
All media in this section taken from~\cite{ACM:diffable_raytracing} All media in this section taken from~\cite{ACM:diffable_raytracing}
\end{frame} \end{frame}
\subsection{Conclusion~-~What can this method do?} \subsection{Conclusion~-~What can this Method do?}
\begin{frame}{Conclusion} \begin{frame}{Conclusion}
\setbeamercovered{transparent} \setbeamercovered{transparent}
\begin{block}{Possibilities} \begin{block}{Possibilities}

View file

@ -22,13 +22,13 @@
\grouplogo{} \grouplogo{}
%% Gruppenname und Breite (Standard: 50 mm) %% Gruppenname und Breite (Standard: 50 mm)
\groupname{Proseminar ``differentiable programming``} \groupname{Proseminar ``Differentiable Programming``}
%\groupnamewidth{50mm} %\groupnamewidth{50mm}
% Beginn der Präsentation % Beginn der Präsentation
\title[Differentiable Monte Carlo Ray Tracing through Edge Sampling]{Differentiable Monte Carlo Ray Tracing through Edge Sampling} \title[Differentiable Monte Carlo Ray Tracing through Edge Sampling]{Differentiable Monte Carlo Ray Tracing through Edge Sampling}
\subtitle{presentation for the proseminar ``differentiable programming``} \subtitle{Presentation for the Proseminar ``Differentiable Programming``}
\author[Clemens Dautermann]{Clemens Dautermann} \author[Clemens Dautermann]{Clemens Dautermann}
\date[\presentationdate]{\presentationdate} \date[\presentationdate]{\presentationdate}