
CV-CUDA
GPU 批量跑图像预处理,云端视觉吞吐翻倍
CV-CUDA 是字节跳动与英伟达联合开源、面向云规模图像处理与计算机视觉的 GPU 加速库。它针对传统 OpenCV 在 CPU 上处理高并发视频流时吞吐不足、延迟高的问题,把常用图像预处理与后处理算子(如缩放、裁剪、色彩空间转换、归一化、NMS 等)用 CUDA 重写,并以批处理方式在 GPU 上并行执行,从而大幅提升单位时间可处理的图像数量。库提供 C++ 与 Python 接口,算子可独立调用,也能与 PyTorch、TensorFlow 等深度学习推理流水线组合,适合部署在数据中心 GPU 上做视频解码后的前处理、模型推理后的后处理等环节。其设计强调零拷贝、批处理和算子融合,目标是让云端视觉服务在相同硬件下获得更高吞吐和更低延迟。
项目数据
使用教程
环境要求
- Linux 系统,架构为 x86_64 或 aarch64(官方预编译 wheel 仅覆盖 Linux 平台)
- Python 3.10 至 3.14
- 已安装 CUDA 12 或 CUDA 13 的 NVIDIA GPU 环境
- 若选择源码构建,建议使用官方 Docker devel 镜像(见 docker/README.md)
安装与启动步骤
-
1确认本地环境
先确认系统为 Linux(x86_64/aarch64)、Python 在 3.10–3.14 之间,并查清本机 CUDA 是 12 还是 13,以便选择对应的 wheel 包。
-
2安装 CUDA 12 版本
本机 CUDA 为 12.x 时,直接从 PyPI 安装 cvcuda-cu12 预编译 wheel,无需自行编译。
pip install cvcuda-cu12 -
3安装 CUDA 13 版本
本机 CUDA 为 13.x 时,改用 cvcuda-cu13。二者按 CUDA 版本二选一安装,不要同时装。
pip install cvcuda-cu13 -
4验证 Python 导入
在 Python 中导入 cvcuda,若无报错即说明库与 CUDA 环境匹配、安装成功。
python -c "import cvcuda"
如何确认成功
执行 python -c "import cvcuda" 无任何报错即表示安装成功;如报错多为 CUDA 版本与 wheel 不匹配。
常见问题
Q:应该装 cvcuda-cu12 还是 cvcuda-cu13?
A:取决于本机 CUDA 版本:CUDA 12.x 装 cvcuda-cu12,CUDA 13.x 装 cvcuda-cu13,README 就是按这两个版本分别提供 wheel 的。
Q:支持 Windows 或 macOS 吗?
A:README 说明预编译 Python wheel 只面向 Linux 平台(x86_64 与 aarch64),未提及 Windows/macOS 的预编译包。
Q:需要执行 git submodule update --init 吗?
A:不需要。README 明确指出 CV-CUDA 已不再使用 git submodule,执行该命令不会拉到任何内容。
Q:支持哪些 Python 版本?
A:PyPI 上的预编译 wheel 覆盖 Python 3.10 到 3.14。
Q:能不能自己从源码构建?
A:可以。构建依赖已预装在官方 Docker devel 镜像中,容器外构建的依赖清单见官网 Installation 指南。
注意事项
- 预编译 wheel 仅覆盖 Linux 的 x86_64 与 aarch64 平台,其他平台需参考官网 Installation 页自行构建。
- 除 Python wheel 外,官方还提供 Debian 包和 tar 归档,完整安装方式见 https://cvcuda.github.io/CV-CUDA/installation.html。
- 源码构建依赖通过 CMake 的 find_package 解析,DLPack 未安装时使用 FetchContent 回退。
- 仓库不再使用 git submodule,克隆后无需初始化子模块。
核心亮点
- 算子用 CUDA 重写并支持批处理,云上高并发图像前处理吞吐明显高于 CPU 版 OpenCV
- 提供 C++ 与 Python 双接口,可嵌入现有推理流水线,与 PyTorch/TensorFlow 配合使用
- 由字节跳动与英伟达联合维护,算子覆盖缩放、裁剪、色彩转换、NMS 等常用视觉前后处理
不足之处
- 强依赖 NVIDIA GPU 与 CUDA 环境,无 GPU 或非 N 卡场景无法使用
- 算子集合相对 OpenCV 仍有限,部分冷门图像处理功能需自行实现或回退到 CPU
适用场景
- 云端视频流实时前处理:解码后批量缩放、裁剪、归一化再送推理
- 大规模图像检索/审核服务:GPU 上批量做色彩转换与尺寸统一
- 深度学习推理流水线:把 NMS、仿射变换等后处理放到 GPU 减少 CPU 瓶颈
替代项目
OpenCV、DALI、Kornia
项目介绍
同类项目推荐
modlens
开源
给纯文本编码代理装上眼睛,粘贴图片即刻获得结构化视觉证据。
The first vision plugin for DeepSeek Harness, and the vision bridge for every text-o···
opencv
开源
开箱即用的视觉算法库,搞定图像视频处理与识别
Open Source Computer Vision Library
OpenCVTutorials
开源
中文 OpenCV 教程,从入门到实战,边看边跑代码
OpenCV-Python4.1 中文文档
DEIMv2
开源
用DINOv3做实时检测,又快又准,直接落地。
[DEIMv2] Real Time Object Detection Meets DINOv3