DiPTer is a framework for creating procedurally generated textures that are fully differentiable. It features a differentiable renderer specialized in procedural textures implemented in PyTorch and a graphical interface, including a node editor, implemented using PyQt5. DiPTeR's main feature however, is a parameter estimation tool that lets users automatically estimate parameter values of a procedural texture model, based on an input target texture.
This project was created as part of my master thesis.
The parameter estimation algorithm uses gradient descent and loss functions to minimize the difference between a user input image and the output of a user designed procedural texture.
Python dependencies can be installed from the environment.yml
file using conda. However, I've had problems installing from this format before, so as an alternative, install
from the env.txt
file instead using conda env create --file env.txt
.
In order for glumpy
to work, freetype
is needed. To install it on Windows, you can download the freetype.dll
from
HERE. You then need to set the FT_Library_filename
variable in glumpy/ext/freetype /__init__.py
to point to this .dll
...
For Anaconda users, this folder is usually located in C:/Users/<username>/<Anaconda3 or miniconda3>/envs/DiPTer/Lib/site-packages