← the void

what I'm working through right now

research


not published work. I'm two years into a degree, not a phd. what lives here is the writing I do while learning something properly: what a technique actually does, what I got wrong, and what it cost me to find out. the post-mortems below are the second half of that, one per bug that actually hurt.

working draft · july 2026 · 6 pages

Learning Computer Vision from the Pixels Up

Field notes on classical CV, and why I worked through all of it before touching a neural network.

abstract

Most people entering computer vision start at a pretrained model and work backwards, which means the first time something breaks they have no mental model to debug against. I took the opposite route: several weeks working through classical CV (convolution, edge detection, segmentation, feature matching, and projective geometry) implemented and tuned by hand in OpenCV before any network was involved. This document is the writeup of that process. It records what each technique actually does, the errors I made and what they taught me, three projects that forced the ideas together, and where the work goes from here. The central claim is simple: a convolutional network is a stack of learned kernels, and it is worth knowing exactly what a kernel does before letting gradient descent choose them for you.

covered

OpenCVconvolutioncannycontoursORB / SIFThomography

post-mortems

every one of these is a bug that cost me real hours in something I built. written up afterwards: the symptom, how I chased it, what was actually wrong, and what I changed about how I write that kind of code.

what's next