-
Recent Posts
- Transforming “noise” and random variables through non-linearities March 16, 2022
- Fast, GPU friendly, antialiasing downsampling filter March 7, 2022
- Exposure Fusion – local tonemapping for real-time rendering February 28, 2022
- Light transport matrices, SVD, spectral analysis, and matrix completion February 15, 2022
- Insider guide to tech interviews January 4, 2022
Categories
Tag Archives: numpy
Superfast void-and-cluster Blue Noise in Python (Numpy/Jax)
This is a super short blog post to accompany this Colab notebook. It’s not an official part of my dithering / Blue Noise post series, but thematically fits it well and be sure to check it out for some motivation … Continue reading
Posted in Code / Graphics
Tagged blue noise, dithering, graphics programming, jax, numpy, python
1 Comment
Bilinear down/upsampling, aligning pixel grids, and that infamous GPU half pixel offset
It’s been more than two decades of me using bilinear texture filtering, a few months since I’ve written about bilinear resampling, but only two days since I discovered a bug of mine related to it. 😅 Similarly, just last week … Continue reading
Posted in Code / Graphics
Tagged digital signal processing, gpu, image processing, libraries, numpy, sampling, signal processing, upsampling
11 Comments
Converting wavetables to Ableton Operator AMS waves
This blog post comes with Ableton Operator AMS “wavetables” here. In Ableton’s FM synth you can use different types of oscillator waves as your operators (both carriers as well as modulators), as well as draw custom ones: What is not … Continue reading
Posted in Audio / Music / DSP
Tagged ableton, digital signal processing, dsp, fourier, frequency domain, numpy, python, synthesis
3 Comments
“Optimizing” blue noise dithering – backpropagation through Fourier transform and sorting
Introduction This will be a blog post that is second in an (unanticipated) series on interesting uses of the JAX numpy autodifferentiation library, as well as an extra post in my very old post series on dithering in games and … Continue reading
Posted in Code / Graphics
Tagged blue noise, dithering, frequency domain, image processing, jax, machine learning, noise, numpy, python
6 Comments
Using JAX, numpy, and optimization techniques to improve separable image filters
In today’s blog post I will look at two topics: how to use JAX (“hyped” new Python ML / autodifferentiation library), and a basic application that is follow-up to my previous blog post on using SVD for low-rank approximations and … Continue reading
Posted in Code / Graphics
Tagged bokeh, colab, github, graphics programming, image processing, jax, machine learning, maths, numpy, postprocessing, programming, python
10 Comments
Separate your filters! Separability, SVD and low-rank approximation of 2D image processing filters
In this blog post, I explore separable convolutional image filters: how can we check if a 2D filter is separable, and how to compute separable approximations to any arbitrary 2D filter represented in a numerical / matrix form using SVD. Continue reading
Posted in Code / Graphics
Tagged algorithms, approximation, blur, bokeh, depth of field, graphics, image processing, linear algebra, numpy, optimizations, postprocessing, python
13 Comments
Analyze your own activity data using Google Takeout – music listening stats example
The goal of this post is to show how to download our own data stored and used by internet services to generate personalized stats / charts like below and will show step-by-step how to do it using colab, Python, pandas, … Continue reading
Posted in Code / Graphics
Tagged colab, data, numpy, programming, python, statistics, visualization
Leave a comment