Projects

Some of my most notable projects are listed here.
You can find more on my github.

tiler

Fast N-dimensional numpy array tiling and merging, with overlapping, padding, and tapering support

During my PhD project, I work on semantic segmentation of 3D data that is often too big for GPU memory. After reusing same tiling (patching) functions for multiple projects, I decided to write a separate library. Tiler is memory-optimized (no copies), works on any number of dimensions, automatically computes required overlaps and padding, and can apply tapering.

First published: 2020-09-30

ulauncher-spotify-api

Ulauncher extension for controlling Spotify

Extension for Ulauncher, application launcher for Linux. The extension provides access to all Spotify WebAPI endpoints, allowing users to control Spotify playback on all connected devices, e.g. smartphones, smart speakers or computers. Moreover, the extension allows convenient search in Spotify catalogue of tracks, albums, artists and playlists. Two months after publishing the extension on github (at the moment of writing this, Oct 18 2020), it has ~100 monthly users from all over the world.

First published: 2020-08-29

voltools

CUDA-accelerated Numpy 3D affine transformations

Applying affine transformations to big 3D arrays on CPU is extremely slow. During my PhD project, I have worked with 3D template matching, where the template must be rotated hundreds of times, per each voxel of search volume. To optimize this obvious bottleneck, I wrote a simple CUDA kernel and together with PyCUDA connections, the template matching time was reduced in the number of magnitudes (2 hours on 16-core CPU vs 6 minutes on GTX 1080Ti).

First published: 2019-01-12