
Recent Posts
 Gradientdescent optimized recursive filters for deconvolution / deblurring September 5, 2022
 Progressive image stippling and greedy blue noise importance sampling August 31, 2022
 Removing blur from images – deconvolution and using optimized simple filters May 26, 2022
 Transforming “noise” and random variables through nonlinearities March 16, 2022
 Fast, GPU friendly, antialiasing downsampling filter March 7, 2022
Categories
Tag Archives: maths
Gradientdescent optimized recursive filters for deconvolution / deblurring
This post is a followup to my post on deconvolution/deblurring of the images. In my previous blog post, I discussed the process of “deconvolution” – undoing a known convolution operation. I have focused on traditional convolution filters – “linear phase, … Continue reading
Posted in Code / Graphics
Tagged algorithms, digital signal processing, graphics, graphics programming, image processing, jax, maths, numpy, python, signal processing
Leave a comment
Transforming “noise” and random variables through nonlinearities
This post covers a topic slightly different from my usual ones and something I haven’t written much about before – applied elements of probability theory. We will discuss what happens with “noise” – a random variable – when we apply … Continue reading
Posted in Code / Graphics
Tagged blue noise, graphics, graphics programming, image processing, jax, mathematics, maths, noise, programming, python
Leave a comment
Procedural Kernel (Neural) Networks
Last year I worked for a bit on a fun research project that ended up published as an arXiv “preprint” / technical report and here comes a few paragraph “normal language” description of this work. Neural Networks are taking over … Continue reading
Posted in Code / Graphics
Tagged image processing, linear algebra, machine learning, maths, signal processing
Leave a comment
Study of smoothing filters – SavitzkyGolay filters
Last week I saw Daniel Holden tweeting about SavitzkyGolay filters and their properties (less smoothing than a Gaussian filter) and I got excited… because I have never heard of them before and it’s an opportunity to learn something. When I … Continue reading
Posted in Code / Graphics
Tagged algorithms, digital signal processing, image processing, maths, python, signal processing
Leave a comment
Comparing images in frequency domain. “Spectral loss” – does it make sense?
Recently, numerous academic papers in the machine learning / computer vision / image processing domains (re)introduce and discuss a “frequency loss function” or “spectral loss” – and while for many it makes sense and nicely improves achieved results, some of … Continue reading
Posted in Code / Graphics
Tagged algorithms, image processing, linear algebra, machine learning, maths, neural networks
6 Comments
Neural material (de)compression – datadriven nonlinear dimensionality reduction
In this post I come back to something I didn’t expect coming back to – dimensionality reduction and compression for whole material texture sets (as opposed to single textures) – a significantly underexplored topic. In one of my past posts … Continue reading
Compressing PBR material texture sets with sparsity and kSVD dictionary learning
Introduction In this blog post, I am going to continue exploration of compressing whole PBR texture sets together (as opposed to compressing each texture from the set separately) and using the fact that those textures are strongly correlated. In my … Continue reading
Posted in Code / Graphics
Tagged compression, graphics, graphics programming, image processing, linear algebra, machine learning, maths, PBR, rendering, signal processing, textures
8 Comments
Dimensionality reduction for image and texture set compression
In this blog post I am going to describe some of my past investigations on reducing the number of channels in textures / texture sets automatically and generally – without assuming anything about texture contents other than correspondence to some … Continue reading
Posted in Code / Graphics
Tagged compression, graphics, image processing, linear algebra, machine learning, maths, PBR, physicallybased shading, textures
17 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 followup to my previous blog post on using SVD for lowrank approximations and … Continue reading
Posted in Code / Graphics
Tagged bokeh, colab, github, graphics programming, image processing, jax, machine learning, maths, numpy, postprocessing, programming, python
11 Comments
Separable disklike depth of field
This is a short note accompanying shadertoy: https://www.shadertoy.com/view/lsBBWy . It is direct implementation of “Circularly symmetric convolution and lens blur” by Olli Niemitalo (no innovation on my side, just a toy implementation) and got inspired by Kleber Garcia’s Siggraph 2017 presentation “Circular … Continue reading
Posted in Code / Graphics
Tagged bokeh, depth of field, dof, far cry 4, Gaussian, maths, photography, poisson, postprocessing, separable, witcher 2
2 Comments
Dithering part three – real world 2D quantization dithering
In previous two parts of this blog post miniseries I described basic uses mentioned blue noise definition, referenced/presented 2 techniques of generating blue noise and one of many general purpose highfrequency lowdiscrepancy sampling sequences. In this post, we will look … Continue reading
Posted in Code / Graphics
Tagged bayer, blue noise, dithering, fourier, graphics, graphics programming, interleaved gradient noise, mathematica, mathematics, maths, noise, programming, sampling
7 Comments
You must be logged in to post a comment.