Information
- Publication Type: Bachelor Thesis
- Workgroup(s)/Project(s):
- Date: December 2023
- Date (Start): 15. March 2023
- Date (End): 18. December 2023
- Matrikelnummer: e11914298
- First Supervisor:
Abstract
The lighting design of (virtual) space is an important aspect of our daily environment. It not only allows for creative expression but is often a necessary asset in professional work environments and artistic productions. However, due to the computational complexity of this problem, current solutions are usually built in performance-oriented programming languages that offer a detailed low-level view of the application on the one hand but do not allow for fast development and easy exchange of algorithms on the other. This work builds on the already existing C++ rendering framework Tamashii, proposed by Lipp et al. in 2023 [20], which offers view-independent and gradient-based global lighting design optimization. We propose a way to integrate MATLAB functions into the optimization process in order to not only allow for easier development of optimization algorithms but also enable access to MATLAB’s existing code base and numerical analysis tools. We therefore implement a bidirectional MATLAB/C++ interface for exchanging optimization data between the rendering process and the MATLAB process. In order to achieve this functionality, we use the MATLAB Engine API for C++ and the MATLAB MEX API, which are both natively contained within MATLAB. Further, we implement a mechanism for inter-process communication using Windows Named Pipes and a custom communication protocol. In addition, this work also briefly discusses various optimization methods and the use of Surrogate-Based Optimization (SBO) for the global lighting design problem. We show that our method achieves great performance and evaluate it against plain C++ implementations on two test scenes by not only testing optimization methods via the interface but also testing simple rendering of new lighting configurations. The test results also show that MALTAB’s current SBO implementation can bring good performance to the optimization problem we encounter in Tamashii in certain scenes. Lastly, we discuss the increased usability and insight into optimization methods achieved by integrating MATLAB into Tamashii.Additional Files and Images
Weblinks
No further information available.BibTeX
@bachelorsthesis{Zezulka_Matthias-2023-MatLabOptInterface,
title = "Bidirectional MATLAB/C++ Interface for Lighting Design
Optimization",
author = "Matthias Zezulka",
year = "2023",
abstract = "The lighting design of (virtual) space is an important
aspect of our daily environment. It not only allows for
creative expression but is often a necessary asset in
professional work environments and artistic productions.
However, due to the computational complexity of this
problem, current solutions are usually built in
performance-oriented programming languages that offer a
detailed low-level view of the application on the one hand
but do not allow for fast development and easy exchange of
algorithms on the other. This work builds on the already
existing C++ rendering framework Tamashii, proposed by Lipp
et al. in 2023 [20], which offers view-independent and
gradient-based global lighting design optimization. We
propose a way to integrate MATLAB functions into the
optimization process in order to not only allow for easier
development of optimization algorithms but also enable
access to MATLAB’s existing code base and numerical
analysis tools. We therefore implement a bidirectional
MATLAB/C++ interface for exchanging optimization data
between the rendering process and the MATLAB process. In
order to achieve this functionality, we use the MATLAB
Engine API for C++ and the MATLAB MEX API, which are both
natively contained within MATLAB. Further, we implement a
mechanism for inter-process communication using Windows
Named Pipes and a custom communication protocol. In
addition, this work also briefly discusses various
optimization methods and the use of Surrogate-Based
Optimization (SBO) for the global lighting design problem.
We show that our method achieves great performance and
evaluate it against plain C++ implementations on two test
scenes by not only testing optimization methods via the
interface but also testing simple rendering of new lighting
configurations. The test results also show that MALTAB’s
current SBO implementation can bring good performance to the
optimization problem we encounter in Tamashii in certain
scenes. Lastly, we discuss the increased usability and
insight into optimization methods achieved by integrating
MATLAB into Tamashii.",
month = dec,
address = "Favoritenstrasse 9-11/E193-02, A-1040 Vienna, Austria",
school = "Research Unit of Computer Graphics, Institute of Visual
Computing and Human-Centered Technology, Faculty of
Informatics, TU Wien ",
URL = "https://www.cg.tuwien.ac.at/research/publications/2023/Zezulka_Matthias-2023-MatLabOptInterface/",
}