Visions GUI
An offline python frontend for the QuadVisions Colab Notebook using tkinter. It offers basic options and interactively displays the generating image. So far PyramidVisions, FourierVisions and CLIP + CPPN are implemented. Image generation code: Jens Goldberg / Aransentin, Colab by Philipuss#4066.
Installation
VisionsGUI was tested under Arch Linux and Windows 10 on a NVIDIA RTX 2070 Super. PyramidVisions and FourierVisions require at a card with at least 4GB of VRAM, CLIP + CPPN requires more than 8GB. CPU only is currently not supported.
Dependencies
Python and CUDA are required, the remaining dependencies can be installed via pip. Using a virtual environment like venv is preferred to keep the required pip packages seperate from your existing pip packages.
Arch Linux
- Install Python 3 and pip via
pacman -S python python-pip
- Install the CUDA 11 toolkit via
pacman -S cuda
- Install the pip requirements:
pip install -r requirements.txt
Windows
- Install Python 3
- Install the CUDA 11 toolkit
- Install the pip requirements:
pip.exe install -r requirements.txt
Other Linux distros
Python 3 should be available as a package for most distros but CUDA 11 might not be. In the latter case, an installer is available on NVIDIA's site.
Usage
To start, run python visions-gui.py
. An internet connection is only required when running a model for the first time. No connection is required after the model has been downloaded.
Modules
The GUI is made up of multiple modules which offer feedback to the user and allow to change a handful of settings.
Image viewer
The image viewer displays the current progress of the image and is periodically updated during generation. The displayed images are also accessible in the images
folder.
Prompt bar
The prompt bar consists of a text field and a start / stop toggle button. A prompt is entered into the text field and the image will be generated as soon as the button is pressed. To stop, press the button again. The button also serves as the GUI's state:
Color | State |
---|---|
Green | The model is ready and waiting to be started |
Yellow | The model is currently generating an image |
Red | An error occured |
Progress bar
The progress bar shows the progress of the two stages from left to right.
Settings panel
The settings panel contains a few option for generating an image:
Setting | Description |
---|---|
Save every | Cycles completed before displaying and saving the next image. Lower values add more overhead. |
Rough cycles | Cycles during the first stage. |
Fine cycles | Cycles during the second stage. |
Seed | If a random or fixed seed is used. |
Backend | Which model to use |
Future stuff
- Add DirectVisions
- UI support for multiple text / weight pairs
- UI support for variable image sizes
- Compiled executables