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/", }