Grayskull: A tiny computer vision library in C for embedded systems, etc.
5 months ago
- #embedded-systems
- #microcontrollers
- #computer-vision
- Grayskull is a minimalist, dependency-free computer vision library for microcontrollers and resource-constrained devices.
- Focuses on grayscale images with modern, practical algorithms fitting in a few kilobytes of code.
- Single-header design, integer-based operations, pure C99, no dependencies, no dynamic memory allocation.
- Supports image operations like copy, crop, resize, and downsample.
- Includes filtering (blur, Sobel edges, thresholding), morphology (erosion, dilation), and geometry (connected components, perspective warp).
- Features FAST/ORB keypoints and descriptors for object tracking and local binary patterns (LBP) for detecting faces, vehicles, etc.
- Utilities include PGM read/write and optional helper functions for memory allocation.
- Online demo available to try Grayskull in a browser.
- Licensed under the MIT License, free for use in research, products, and embedded vision projects.