Samplin' Safari
December 28, 2023 ยท View on GitHub
Samplin' Safari is a research tool to visualize and interactively inspect high-dimensional (quasi) Monte Carlo samplers.
It was initially developed as part of the publication:
Orthogonal Array Sampling for Monte Carlo Rendering
Wojciech Jarosz, Afnan Enayet, Andrew Kensler, Charlie Kilpatrick, Per Christensen
In Computer Graphics Forum (Proceedings of EGSR), 38(4), July 2019
Project page PDF
and now released under the 3-clause BSD license. For details, see the LICENSE file.
Screenshots
Features
- interactively switching samplers, setting number of samples, dimensions, and various sampler parameters
- 3D and 2D orthographic views for X, Y and Z dimensions
- view of all 2D projections (useful for high-dimensional samples)
- show 1D projections of points alongside the 2D or 3D view
- custom mapping of any (higher) dimensions to X, Y or Z
- save all of these views as vector EPS or SVG files
- save and load points to/from CSV text files
- show point index and point coordinates
- show beautifully antialiased grids for various stratification levels
- displaying only a subset of points, either by subsetting on sample index, or sample coordinates.
Running Samplin' Safari
The easiest way to try out Samplin' Safari is to load up the web version by following this link.
Alternatively, you can check out the latest release for precompiled binaries for various platforms.
Building
Assuming you have CMake and a C++17 toolchain, compiling should be as simple as (dependencies are automatically downloaded via CPM.cmake so you will need an active internet connection during cmake configure):
git clone https://github.com/wkjarosz/SamplinSafari.git
cd SamplinSafari
mkdir build
cd build
cmake ../
cmake --build . -j 4
Acknowledgements
Samplin' Safari was primarily developed by Wojciech Jarosz though it depends on a number of external libraries and techniques, as listed on the in-app about dialog.