.. Vis-BSDFs documentation master file, created by sphinx-quickstart on Sat Jan 4 16:36:57 2025. You can adapt this file completely to your liking, but it should at least contain the root `toctree` directive. Visualizing Measured BSDFs ========================== .. image:: ../media/tool_preview.png :alt: alt text :align: center In this project, we aim to visualize the directional distributions of analytic and data-driven BSDFs. Our tool allows the design of multivariate distributions. To that end, the designer is supported by visual representations of abstract data in various levels of detail. On the highest level, the designer is presented with the original dimensionality of the data giving an overview. For instance, in the case of data-driven BSDFs, the designers are greeted by a 4D representation of the data in multiple 2D slices. Furthermore, our tool allows us to show the data in detail, decomposing the multivariate structure into its marginal and conditional components. Visualization plays a critical role in the design process of a distribution. It not only provides a better understanding of the data but also gives us feedback regarding the fidelity of the designed distribution. Be that in the deepest level representation of the data (e.g., 1D marginal representation) or the highest level (i.e., overview). The design process is moreover supported by a highly interactive user interface, allowing the user to explore the best fit to the reference analytic distribution or the underlying measurements (i.e., data-driven approach). Our tool consists of three parts. The design process takes place in the "generate data" tab. Having a dynamic dataset leads to challenges, one being how to visualize previously designed distributions. The "explore data" tab aims to address this dilemma, allowing designers to show previously saved distributions. Finally, the "render" tab aids the designer to apply newly designed distributions using Mitsuba 3's [1] custom BSDFs. Consequently, providing the designer with a comparison of the designed BSDF utilizing the designed distribution against the reference BSDF. [1] Jakob, W., Speierer, S., Roussel, N., Nimier-David, M., Vicini, D., Zeltner, T., Nicolet, B., Crespo, M., Leroy, V., & Zhang, Z. (2022). Mitsuba 3 renderer (Version 3.0.1) [Computer software]. https://mitsuba-renderer.org ---- Repository for the `Visualization 2 `_ project that aims to visualize directional distribution of measured BSDFs. Important Note -------------- Please do **not** share this project (code, visuals, etc.) without the permission of the author. This project is part of an ongoing research project (`193.023 Project in Visual Computing 1 `_ and `193.024 Project in Visual Computing 2 `_) and a potential leak can greatly hinder the progress. GitHub ------ Please note that the current repository is private. For access, please contact the author at ``saipcanhasbay@gmail.com``. Clone this repository using: .. code-block:: console git clone --recurse-submodules https://github.com/sapo17/GeometryProcessingS2024.git If you forget to retrieve the submodules, you can use: .. code-block:: console git submodule update --init --recursive Installation ------------ We use `Conda `_. Conda provides package, dependency, and environment management for any language. We provide an `environment file (venv.yml) `_ to create the conda virtual environment. Separate installation of PyTorch is necessary (see also the `PyTorch`_ instructions). 1. Create Environment ^^^^^^^^^^^^^^^^^^^^^ .. code-block:: console conda env create -f venv.yml 2. Activate Environment ^^^^^^^^^^^^^^^^^^^^^^^ .. code-block:: console conda activate vis-bsdfs 3. PyTorch Installation ^^^^^^^^^^^^^^^^^^^^^^^ PyTorch installation may differ depending on your system. Please also refer to the `official PyTorch instructions `_. Example command: .. code-block:: console conda install pytorch torchvision torchaudio pytorch-cuda=12.4 -c pytorch -c nvidia Run --- Visual Studio Code ^^^^^^^^^^^^^^^^^^ 1. Go to **Run and Debug** Tab (``Ctrl + Shift + D``). 2. Select **Vis-BSDFs** on the dropdown menu. 3. Click the **Play** Button (``F5``). 4. A terminal window will be triggered with a message like ``Dash is running on http://127.0.0.1:8050/``. Open that link in your preferred web browser. Terminal ^^^^^^^^ 1. Activate the conda environment (``conda activate vis-bsdfs``) in the project root folder (where this file is located). 2. Enter ``python app.py``. 3. A message such as ``Dash is running on http://127.0.0.1:8050/`` will appear. Open the provided link in your preferred web browser. .. _PyTorch: https://pytorch.org/ Contents -------- .. toctree:: :maxdepth: 2 :caption: Contents: modules app