+# Installation and test #
+
+Executing
+
+```
+make -j -k
+./test-svrt.py
+```
+
+should generate an image
+[`example.png`](https://fleuret.org/git-extract/pysvrt/example.png) in
+the current directory.
+
+Note that the image generation does not take advantage of GPUs or
+multi-core, and can be as fast as 10,000 vignettes per second and as
+slow as 40 on a 4GHz i7-6700K.
+
+# Vignette generation and compression #
+
+## Vignette sets ##
+
+The file [`svrtset.py`](https://fleuret.org/git-extract/pysvrt/svrtset.py) implements the classes `VignetteSet` and
+`CompressedVignetteSet` both with a constructor
+
+```
+__init__(problem_number, nb_samples, batch_size, cuda = False, logger = None)
+```
+
+and a method
+
+```
+(torch.FloatTensor, torch.LongTensor) get_batch(b)
+```
+
+which returns a pair composed of a 4d 'input' Tensor (i.e. single
+channel 128x128 images), and a 1d 'target' Tensor (i.e. Boolean
+labels).
+
+## Low-level functions ##
+
+The main function for genering vignettes is