用 Rust 构建高性能 3D 计算机视觉库,兼顾安全与实时性。
Kornia-rs: A Low-Level 3D Computer Vision Library In Rust
- 全由 Rust 编写,利用所有权模型保障内存和线程安全。
- 图像变换任务速度比原生 Rust 方案快 3~5 倍,媲美 C++ 库。
- 填补 Rust 生态中 3D 视觉算子空白,支持跨平台调用。
我们提出 kornia-rs,一个完全使用原生 Rust 编写的高性能 3D 计算机视觉库,专为安全关键和实时应用设计。与基于 C++ 的 OpenCV 或封装型 OpenCV-Rust 不同,kornia-rs 从零构建,充分利用 Rust 的所有权模型和类型系统实现内存与线程安全。该库采用静态类型张量系统和模块化仓库结构,提供高效的图像输入输出、图像处理及 3D 操作。为提升跨平台兼容性,kornia-rs 提供 Python 绑定,可无缝高效集成到 Rust 代码中。实测表明,kornia-rs 在图像变换任务上相较原生 Rust 方案提速 3~5 倍,性能接近基于 C++ 封装的库。除 2D 视觉能力外,kornia-rs 还填补了 Rust 生态在 3D 计算机视觉算子方面的空白。本文展示了 kornia-rs 的架构与性能特征,验证其在真实计算机视觉场景中的有效性。
原文摘要 · Abstract (English)
We present \textit{kornia-rs}, a high-performance 3D computer vision library written entirely in native Rust, designed for safety-critical and real-time applications. Unlike C++-based libraries like OpenCV or wrapper-based solutions like OpenCV-Rust, \textit{kornia-rs} is built from the ground up to leverage Rust's ownership model and type system for memory and thread safety. \textit{kornia-rs} adopts a statically-typed tensor system and a modular set of crates, providing efficient image I/O, image processing and 3D operations. To aid cross-platform compatibility, \textit{kornia-rs} offers Python bindings, enabling seamless and efficient integration with Rust code. Empirical results show that \textit{kornia-rs} achieves a 3~ 5 times speedup in image transformation tasks over native Rust alternatives, while offering comparable performance to C++ wrapper-based libraries. In addition to 2D vision capabilities, \textit{kornia-rs} addresses a significant gap in the Rust ecosystem by providing a set of 3D computer vision operators. This paper presents the architecture and performance characteristics of \textit{kornia-rs}, demonstrating its effectiveness in real-world computer vision applications.
Thank you to arXiv for use of its open access interoperability. PaperDance 不是 arXiv 官方产品;中文卡片由大模型生成,请以原文为准。