Notebooks for the 2026 KABK workshop Generative Gestures
| datasets | ||
| gg | ||
| images | ||
| models | ||
| OUT | ||
| sketch-rnn@253ea881aa | ||
| .gitignore | ||
| .gitmodules | ||
| .python-version | ||
| 01-prepare-data.ipynb | ||
| 02-train-network.ipynb | ||
| 03-generate-lines.ipynb | ||
| 04-draw.ipynb | ||
| pyproject.toml | ||
| README.md | ||
| uv.lock | ||
Install
- Make sure to have
gitinstalled. See Git installation instructions - Make sure you have
uvinstalled. See uv installation instructions - Clone this repository by opening Terminal (Mac/Linux) or PowerShell (Windows) and run:
git clone --recurse-submodules https://git.rubenvandeven.com/r/2026-kabk-workshop-drawing-gestures.git - Move into the directory with
cd 2026-kabk-workshop-drawing-gestures - Run jupyter to browse the different notebooks of the workshop:
uv run jupyter lab --collaborative
Updating
- Make sure to
cdinto the2026-kabk-workshop-drawing-gestures - Stop Jupyter (ctrl+c followed by a y)
- Get the latest version of the code:
git pull - Make sure the submodules are updated as well:
git submodule update - Update dependencies:
uv sync - Now start again with
uv run jupyter lab --collaborative
Tricks
Animate a list of shapes. Here, that is conditionals:
import time
output = display('', display_id="anim")
for i, shape in enumerate(conditionals):
img = shape.as_svg(30, 'red', 3)
output.update(img)
time.sleep(.1)
Resources
- Tom Ingold: Lines (2016)
- Alexander Gerner: Diagrammatic thinking
- Showcase of predictive handwriting: Carter et al. Four Experiments in Handwriting with a Neural Network
- In 1963-1965 A. Michael Noll recreated works by Piet Mondriaan's Compositie in lijn and Bridget Riley's painting Currents with computational drawing at Bell labs. Media-N
- Pen plotter works by Vera Molnar: Lettres à ma mère (1981-1990) https://dam.org/museum/artists_ui/artists/molnar-vera/lettres-a-ma-mere/ - Feature on Molnar's work at Artforum
- Remaking Georg Nees' "Schotter"
- Tracing the Line
- Nice overview of the history of pen plotter art (Sher Minn Chong); inluding works of Edward Zajec, Irving John Good, Frieder Nake, Mark Wilson.
- Sunjoo Lee & Ko de Beer, Machine in Flux-Wood
Dataset preparation
- The input images are SVG. Any SVG file can be converted to the required NPZ format by running
package_images() - Every SVG file can contain multiple drawings: a set of paths grouped together is one shape.
- Thus, the following SVG has two shapes, one with two strokes, the other with a single one:
<svg><g><path /><path /></g><g><path /></g></svg>
- Thus, the following SVG has two shapes, one with two strokes, the other with a single one:
- Tracing with Inkscape, when tracing a line drawing make sure to use:
Centerline tracing (autotrace)