Skip to main content
BVDART Logo

How Convolution Kernels Became Art

⊘ Deep Dive• 3 min read
kernelscreative-processtechnique
From image processing utility to creative medium — how applying matrices to noise fields unlocked a new visual language.

From Utility to Art

When I first learned about convolution, kernels were purely functional — tools for blurring, sharpening, and edge detection. A 3×3 matrix of numbers, applied mechanically. It never occurred to me that the same mathematics could produce art.

The breakthrough came when I stopped thinking of kernels as corrections and started treating them as creative transformations on random noise fields.

A matrix changes the neighborhood

Input image48 × 48 px
Click to inspect a pixelx 24 · y 24
The kernel3 × 3
Find edges

Keep the changes. Let flat areas disappear.

Output imageFind edges
Output image

Every pixel, recalculated.

Slide. Multiply. Add. Repeat.

Pixel 1,177 / 2,304
Under the hood
02 / Under the hood

One pixel. Nine little decisions.

Take a pixel and its eight neighbors. Multiply each value by its kernel weight, then add the results.

The pixel you selected[24, 24]
1. Read the neighborhood

Brightness from 0 to 255

2. Apply the weights

Kernel rotated 180° for convolution

3. Add them up
0
sum -91 ÷ 1 = -91
Black
White

Below 0 → clipped to black.

In a flat region, positive and negative weights cancel. At an edge, they don’t—so positive responses light up. Negative responses are clipped to black.

03 / Build your intuition

Same operation. Different ways of seeing.

This study uses generated grayscale patterns, a stride of one, and replicated border pixels. Results are rounded and clipped to 0–255. Convolution rotates the kernel 180°; these presets are symmetric, so the rotation leaves them unchanged. The Lab applies its matrix directly (correlation): rotate an asymmetric matrix yourself to reproduce this study there.

Scan the same ring through edge, identity and blur kernels. Use any control to take over.

Edit the coefficients and inspect one output pixel. This study rotates the matrix for mathematical convolution; the Lab applies it directly, so rotate asymmetric kernels by 180° when comparing them.

Try it yourself
  1. Switch between Original, Box blur, Sharpen and Find edges. Try the rings, checkerboard and wave patterns.
  2. Click a pixel or move with the arrow keys, edit a weight or the divisor, then follow the neighborhood, rotated weights and output brightness below. Step or animate the scan to move across the image.

Watch: Blur shares brightness with the neighbors. Sharpen strengthens local differences. An edge kernel cancels flat regions; positive responses light up while negative results are clipped to black.

Full guide Open in the Lab

Kernels on Noise

A Sobel kernel, designed to find edges in photographs, reveals ridge lines in Perlin noise that look like mountain ranges seen from above. A Laplacian, meant for contour detection, produces electric halos around noise structures. The mathematical purpose is irrelevant — what matters is the visual result.

sobel-on-noise.js
// The Sobel operator on a Perlin noise field
const sobelX = [[-1,0,1], [-2,0,2], [-1,0,1]];
const sobelY = [[-1,-2,-1], [0,0,0], [1,2,1]];

// Magnitude: √(Gx² + Gy²)
// Reveals directional structure hidden in noise
javascript

Carve texture out of noise

Single-octave Perlin noise input
The same noise field96 × 72 · one octave

A higher frequency makes smaller features. Keep the seed fixed to compare their structure.

Noise processed by the selected Lab kernel
Emboss100% · one pass

The diagonal weights turn small brightness differences into ridges, making the noise look embossed.

Applied matrix
-2-10-111012

Σ(I × K) ÷ 1 + 0

Result = I + 1.00 × (filtered − I)

Mean absolute pixel change54.79 / 255

Try intensity 0: the output becomes the original exactly. At 1, the actual Lab kernel result is fully visible. The matrix is applied directly, as in the Lab (correlation), with clamped borders, RGB channels and 8-bit clipping before mixing. Mathematical convolution would rotate the matrix 180°.

Fade the selected kernel out and back in while the Perlin field stays fixed. Use any control to take over.

Keep the same Perlin field while comparing embossing, edges and blur. Only the selected kernel and its strength change the output.

Try it yourself
  1. Keep the noise seed fixed and compare Emboss, Sobel X and Box blur.
  2. Move Kernel intensity to 0, then back to 1. Change Noise frequency to compare finer and broader structures.

Watch: At intensity 0 the output matches the input exactly. Kernel choice changes the actual neighborhood calculation; negative Sobel responses clip to black with the Lab preset.

Full guide Open in the Lab

Kernel Personality

Each kernel has a personality. Gaussian blur creates soft, dreamy fields. Laplacian highlights produce electric contours. Emboss gives flat noise a sculptural quality. And when you chain them — blur, then edge-detect, then sharpen — you get compositions that are impossible to predict but always structurally coherent.

A Creative Language

This is the core of many of my Art: using the vocabulary of image processing as a creative language, and letting the mathematics surprise us. Every artwork begins with noise, and every composition emerges from a specific sequence of kernel transformations.

Related Concepts

Related Articles

Related Artworks

Explore Related Sections

More about the work: