COMPUTER VISION IN NODE.JS

Pure Node.js · Zero Native Dependencies · Custom Codecs

A dependency-free computer vision engine for Node.js. Built with TypedArrays, SharedArrayBuffer, custom JPEG/PNG codecs, optimized kernels, morphology, edge detection, resize, annotation, and pipeline execution.

$ npm i @cervid/vision
~1.6s
30MP CV Pipeline
0
Native Dependencies
MIT
License
Performance

BENCHMARK
6720×4480 JPEG

PIPELINE RELATIVE TIME MEDIAN
@cervid/vision · CV Pipeline
~1.6s
Sharp · JS Sobel Pipeline
~4.8s
Jimp · JS Sobel Pipeline
~33s

JPEG progressive · 6720×4480 · grayscale → blur(1) → Sobel edges → PNG. Cervid Vision uses custom codecs, optimized TypedArray kernels, grayscale PNG export, and pipeline execution.

Capabilities

IMAGE PROCESSING
WITHOUT NATIVE BINDINGS

Codecs

Custom JPEG / PNG

Read and write images without depending on Sharp, OpenCV, libvips, or native addons. Supports JPEG, progressive JPEG, PNG, and PPM.

Kernels

Filters & Edges

Grayscale, blur, Sobel edges, threshold, invert, brightness, contrast, gamma, normalize, histogram, and custom convolution.

Geometry

Resize & Transform

Resize with nearest, bilinear, and area modes. Crop, scale, flip, rotate, and prepare images for computer vision pipelines.

Vision

Masks & Morphology

Thresholding, adaptive threshold, erode, dilate, open, close, color masks, connected components, and bounding boxes.

Annotation

Draw & Inspect

Draw points, lines, rectangles, circles, filled shapes, and detected boxes directly over images and masks.

Pipeline

Optimizable Chains

Use normal chaining for clarity, or pipeline().run() for optimized execution paths on known computer vision workloads.

Positioning

NOT A WRAPPER
A REAL NODE.JS ENGINE

No Sharp

No libvips dependency

Cervid Vision is not a wrapper around Sharp. It ships its own codecs and processing kernels.

No OpenCV

No native computer vision binding

Built for developers who want computer vision workflows directly inside a pure Node.js environment.

No Runtime Deps

TypedArray-first architecture

Uses flat memory, SharedArrayBuffer, and optimized loops instead of object-heavy pixel processing.

> CERVID_PROJECT_MANIFESTO
├─ @cervid/decomposer ← Binary format deconstruction
└─ @cervid/vision ← Image processing and computer vision