kornia/kornia-rs
🦀 Low-level 3D Computer Vision library in Rust
What it solves
Kornia-rs provides a high-performance, low-level foundation for computer vision tasks in Rust. It addresses the need for fast, thread-safe image processing that can seamlessly bridge the gap between raw camera data and machine learning inference engines like PyTorch or TensorRT without unnecessary data copying.
How it works
It uses a unified API that automatically dispatches operations to either the CPU or an NVIDIA GPU based on where the data resides. By leveraging SIMD (NEON/AVX2) for CPU tasks and custom CUDA kernels for GPU tasks, it enables real-time pipelines. It supports zero-copy interoperability through standards like DLPack and the CUDA Array Interface, allowing processed frames to be passed directly into deep learning models.
Who it’s for
This library is designed for developers building real-time computer vision applications, such as camera-to-inference pipelines, robotics, or scientific imaging, who require both the memory safety of Rust and the raw performance of hardware-accelerated processing.
Highlights
- Written in Rust for memory and thread safety with no Global Interpreter Lock (GIL).
- Unified API that handles both CPU and GPU execution automatically.
- Zero-copy integration with PyTorch and TensorRT.
- Real-time ready with V4L2 camera capture and fused CUDA kernels for preprocessing.
- Supports a wide range of image formats including JPEG (via libjpeg-turbo), PNG, TIFF, and WebP.
- Python bindings available, supporting both standard and free-threaded Python builds.
Related
- Project
- Project
- Project
- Project
- Project