NVIDIA 数据加载库 (DALI)
使用图像训练神经网络需要开发者先对这些图像进行标准化处理。由于图像经常压缩以节省存储空间,因此开发者构建了多阶段数据处理管线,其中包括加载、解码、裁剪、缩放和许多其他增强运算符。当前在 CPU 上执行的这些管线已成为瓶颈,限制了整体吞吐量。
现在,您可以在 GPU 上运行数据处理流程,从而缩短神经网络训练的总时间。 NVIDIA 数据加载库 (DALI) 是一个可移植的开源软件库,用于解码和增强图像、视频和语音,以加速深度学习应用程序。DALI 通过重叠 AI 训练和数据预处理来降低数据访问延迟和训练时间,从而缓解瓶颈。它为热门深度学习框架中的内置数据加载器和数据迭代器提供了插入式替代方案,以便轻松集成或重新定位到不同的框架。
主要特性
快速原型设计
利用易于使用的 python API 和跨多个 GPU 的透明扩展,快速迭代。
GPU 加速
通过 NVIDIA Triton™ 加速图像、视频、3D 体积和音频的训练和推理。
数据支持
获得对多种数据格式的支持,包括 LMDB、TFRecord、COCO、JPEG、PNG、TIFF、JPEG2k、wav、flac、ogg、H.26、HEVC 等。
自定义流程
使用灵活的图形创建自定义管线并添加自定义音频、图像和视频处理运算符。
DALI 运算符
DALI 支持用于音频、视频和图像处理的数据加载运算符:
- 增强图库
- 亮度对比示例
- 颜色空间转换
- 图像解码器示例
- HSV 示例
- 使用 HSV 实现随机灰度运算
- 插值方法
- Resize 运算符
- WarpAffine
- 3D 转换

- DALI 中的音频解码器
- 音频频谱图

- 从多个文件中读取简单的视频管线
- 视频管线从目录中读取标记的视频
- 基于时间戳或帧数的标签应用演示视频
- 读取存储为图像格式的视频帧
- 使用图像处理运算符处理视频
- 光流

互操作性
DALI 可与以下库、SDK 和框架进行互操作,或者使用这些库、SDK 和框架。