finds.dev← search

// the find

mikepound/convolve

★ 232 · HTML · Unlicense · updated Feb 2019

Simple demonstration of separable convolutions

A teaching repo that demonstrates separable convolutions in Python — Gaussian blur via hand-rolled Cython, lens blur using complex kernels via NumPy/SciPy. The author is explicit that this is a demo, not a library. It pairs with a YouTube video (Mike Pound's Computerphile work) and is meant to be read, not deployed.

The Cython implementation is a genuine learning artifact — the `-a` flag annotation output showing Python/C boundaries is a nice touch for anyone trying to understand where overhead lives. Separating the Gaussian (Cython) and lens blur (pure Python + SciPy) examples lets you compare approaches side by side. The complex kernel lens blur is an unusual topic that most convolution tutorials skip entirely.

Abandoned in 2019 and shows it — no setup.py, no requirements.txt, manual gcc invocation in the README. The Cython compilation instructions are Linux-specific and already dated (Python 3.6 headers path hardcoded). Stars are almost entirely from Computerphile viewers, not practitioners who'd actually use this. At 232 stars for a 7-year-old demo with two Python files, there's nothing here you couldn't replicate in an afternoon with any modern convolution tutorial.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →