
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: signal processing
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
Fast, GPU friendly, antialiasing downsampling filter
In this shorter post, I will describe a 2X downsampling filter that I propose as a “safe default” for GPU image processing. It’s been an omission on my side that I have not proposed any specific filter despite writing so … Continue reading
Posted in Code / Graphics
Tagged filtering, graphics, graphics programming, image processing, jax, postprocessing, signal processing
3 Comments
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
Practical Gaussian filtering: Binomial filter and small sigma Gaussians
Gaussian filters are the bread and butter of signal and image filtering. They are isotropic and radially symmetric, filter out high frequencies extremely well, and just look pleasant and smooth. In this post I will cover two of my favorite … Continue reading
Processing aware image filtering: compensating for the upsampling
This post summarizes some thoughts and experiments on “filtering aware image filtering” I’ve been doing for a while. The core idea is simple – if you have some “fixed” step at the end of the pipeline that you cannot control … Continue reading
Posted in Code / Graphics
Tagged algorithms, digital signal processing, filtering, graphics, image processing, jax, postprocessing, signal processing
7 Comments
Computing gradients on grids of pixels and voxels – forward, central, and… diagonal differences
In this post, I will focus on gradients of image signals defined on grids in computer graphics and image processing. Specifically, gradients / derivatives of images, height fields, distance fields, when they are represented as discrete, uniform grids of pixels … Continue reading
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
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
6 Comments
Local linear models and guided filtering – an alternative to bilateral filter
Intro In this blog post I am going to describe an alternative tool for the graphics and image processing programmers’ toolbox – guided filtering. Guided filtering is a really handy tool that I learned about from my coworkers, and I … Continue reading
Posted in Code / Graphics
Tagged bilateral, graphics, image processing, machine learning, postprocessing, python, signal processing, ssao, upsampling
7 Comments
You must be logged in to post a comment.