操作参考#
DALI Pipeline 中的数据处理图是通过调用操作函数定义的。它们接受并返回 DataNode
的实例,这些实例是张量批次的符号表示。操作函数不能直接用于处理数据。
有关定义处理 pipeline 的约束,请参阅 Pipeline 文档的此部分。
下表列出了 DALI 中所有可用的操作
函数 |
设备支持 |
简短描述 |
---|---|---|
CPU |
|
|
CPU, GPU |
重采样音频信号。 |
|
CPU |
生成一批随机整数,可用作批次中索引样本的索引。 |
|
CPU, GPU |
水平或垂直翻转(镜像)边界框。 |
|
CPU |
变换边界框,使框在图像粘贴到较大画布后保持在图像中的相同位置。 |
|
CPU, GPU |
使用作为参数传递的一组默认框(锚点)对输入边界框和标签进行编码。 |
|
CPU, GPU |
调整图像的亮度。 |
|
CPU, GPU |
调整图像的亮度和对比度。 |
|
CPU |
|
|
CPU |
|
|
CPU, GPU |
将张量转换为不同的类型。 |
|
CPU, GPU |
将第一个张量转换为第二个张量的类型。 |
|
CPU, GPU |
沿现有轴连接输入张量。 |
|
CPU |
|
|
CPU, GPU |
生成遵循伯努利分布的随机布尔值。 |
|
CPU, GPU |
在各种图像颜色模型之间转换。 |
|
CPU, GPU |
调整图像的色调、饱和度、亮度和对比度。 |
|
CPU, GPU |
调整图像的对比度。 |
|
CPU, GPU |
通过相对于给定中心翻转(反射)其坐标来变换向量或点。 |
|
CPU, GPU |
对点或向量应用线性变换。 |
|
CPU, GPU |
创建输入张量的副本。 |
|
CPU, GPU |
使用指定的窗口尺寸和窗口位置(左上角)裁剪图像。 |
|
CPU, GPU |
如果需要,执行融合裁剪、归一化、格式转换 (NHWC 到 NCHW) 和类型转换。 |
|
CPU, GPU |
执行对 DLPack 张量进行操作的 Python 函数。 |
|
CPU, GPU |
将批量图像以 PPM 格式保存到磁盘。 |
|
CPU, GPU |
从输入序列中提取一个或多个元素。 |
|
CPU, GPU |
从输入张量中擦除一个或多个区域。 |
|
CPU, GPU |
在数据形状中插入范围为 1 的新维度。 |
|
CPU, GPU |
允许将外部提供的数据作为 pipeline 的输入传递。 |
|
CPU, GPU |
ResizedCropMirror 的旧版别名,默认情况下禁用抗锯齿。 |
|
CPU |
|
|
CPU, GPU |
在选定的维度(水平、垂直和深度方向)翻转图像。 |
|
CPU |
返回给定形状和类型的新数据,并填充填充值。 |
|
CPU |
返回与输入数据具有相同形状和类型的新数据,并填充 fill_value。 |
|
CPU, GPU |
对输入应用高斯模糊。 |
|
CPU, GPU |
返回作为输入传递的张量的属性。 |
|
CPU, GPU |
执行 gridmask 增强 (https://arxiv.org/abs/2001.04086)。 |
|
CPU, GPU |
调整图像的色调、饱和度和值(亮度)。 |
|
CPU, GPU |
更改图像的色调级别。 |
|
CPU, 混合 |
|
|
CPU, 混合 |
|
|
CPU, 混合 |
|
|
CPU, 混合 |
|
|
GPU |
执行随机 Jitter 增强。 |
|
CPU, GPU |
将 JPEG 压缩伪影引入 RGB 图像。 |
|
CPU, GPU |
计算输入的拉普拉斯算子。 |
|
CPU, GPU |
通过使用由 keys 和 values 指定的查找表以及未指定键的 default_value 将输入映射到输出。 |
|
CPU, GPU |
通过应用三角形滤波器组将频谱图转换为梅尔频谱图。 |
|
CPU, GPU |
从梅尔频谱图计算梅尔频率倒谱系数 (MFCC)。 |
|
CPU, GPU |
执行从图像批次到每个输出的多次粘贴。 |
|
CPU |
|
|
CPU |
|
|
CPU, GPU |
在音频缓冲区中执行前导和尾随静音检测。 |
|
CPU, GPU |
生成遵循正态分布的随机数。 |
|
CPU, GPU |
通过去除均值并除以标准差来归一化输入。 |
|
CPU, GPU |
调用 njit 编译的 Numba 函数。 |
|
CPU, GPU |
|
|
CPU, GPU |
生成输入的 one-hot 编码。 |
|
CPU |
返回给定形状和类型的新数据,并填充 1。 |
|
CPU |
返回与输入数组具有相同形状和类型的新数据,并填充 1。 |
|
GPU |
计算输入中图像之间的光流。 |
|
CPU, GPU |
在指定的轴中用 fill_value 填充所有样本,以匹配这些轴中批次的最大范围或匹配指定的最小形状。 |
|
GPU |
将输入图像粘贴到较大的画布上,其中画布大小等于 |
|
CPU |
获取编码图像的形状。 |
|
CPU, GPU |
将输入张量标记为序列。 |
|
CPU, GPU |
返回通过根据 indices 参数中给出的索引从输入中选择张量而构造的张量批次。 |
|
CPU |
计算信号的功率谱。 |
|
CPU, GPU |
对输入数据应用预加重滤波器。 |
|
CPU, GPU |
执行 Python 函数。 |
|
CPU |
对图像坐标空间应用预期的随机裁剪,同时保持边界框,以及可选的标签,一致。 |
|
CPU |
生成具有随机选择的面积和宽高比的裁剪窗口。 |
|
CPU, GPU |
执行具有随机选择的面积和宽高比的裁剪,并将其调整为指定的大小。 |
|
CPU, GPU |
将输入的内容视为具有不同的类型、形状和/或布局。 |
|
CPU, GPU |
将输入的内容视为具有不同的形状和/或布局。 |
|
CPU, GPU |
调整图像大小。 |
|
CPU, GPU |
执行融合的调整大小、裁剪、镜像操作。 |
|
CPU |
生成固定形状的裁剪窗口,随机放置,以便尽可能多地包含提供的感兴趣区域 (ROI)。 |
|
CPU, GPU |
将图像旋转指定的角度。 |
|
CPU, GPU |
更改图像的饱和度级别。 |
|
CPU |
|
|
CPU, GPU |
重新排列序列中的帧。 |
|
CPU, GPU |
返回输入批次中张量的形状。 |
|
CPU, GPU |
提取子张量或切片。 |
|
CPU, GPU |
从一维信号(例如,音频)生成频谱图。 |
|
CPU, GPU |
执行球体增强。 |
|
CPU, GPU |
删除作为 axes 或 axis_names 给出的维度。 |
|
CPU |
执行带有边界框的随机裁剪,其中 Intersection Over Union (IoU) 符合 0-1 之间随机选择的阈值。 |
|
CPU, GPU |
沿新轴连接输入张量。 |
|
CPU |
|
|
CPU, GPU |
将幅度(实数,正数)转换为分贝刻度。 |
|
CPU, GPU |
执行对 Torch 张量进行操作的函数。 |
|
CPU, GPU |
通过基于 perm 参数重新排序维度来转置张量。 |
|
CPU, GPU |
生成遵循均匀分布的随机数。 |
|
GPU |
|
|
GPU |
|
|
CPU, GPU |
对图像应用仿射变换。 |
|
CPU, GPU |
执行水增强,使图像看起来像在水下。 |
|
CPU |
返回给定形状和类型的新数据,并填充 0。 |
|
CPU |
返回与输入数组具有相同形状和类型的新数据,并填充 0。 |
|
CPU |
从编码的音频数据解码波形。 |
|
CPU, 混合 |
解码图像。 |
|
CPU, 混合 |
解码图像并提取由固定窗口尺寸和可变锚点指定的感兴趣区域 (ROI)。 |
|
CPU, 混合 |
解码图像并随机裁剪它们。 |
|
CPU, 混合 |
解码图像并提取感兴趣区域。 |
|
CPU, GPU |
|
|
GPU |
执行图像去马赛克/去拜耳化。 |
|
GPU |
对输入图像执行膨胀操作。 |
|
CPU, GPU |
执行灰度/逐通道直方图均衡化。 |
|
GPU |
对输入图像执行腐蚀操作。 |
|
CPU, GPU |
使用提供的滤波器卷积图像。 |
|
GPU |
使用指定的解压缩算法膨胀/解压缩输入。 |
|
GPU |
中值模糊通过用周围矩形区域的中值颜色替换每个像素来执行图像或图像序列的平滑处理。 |
|
CPU |
获取编码图像的形状。 |
|
GPU |
remap 操作对图像应用通用几何变换。换句话说,它从输入图像中的一个位置获取像素,并将它们放在输出图像中的另一个位置。变换由 |
|
GPU |
调整图像大小。 |
|
CPU, GPU |
调整张量大小。 |
|
GPU |
对图像执行透视变换。 |
|
CPU, 混合 |
解码图像。 |
|
CPU, 混合 |
解码图像并提取由固定窗口尺寸和可变锚点指定的感兴趣区域 (ROI)。 |
|
CPU, 混合 |
解码图像并随机裁剪它们。 |
|
CPU, 混合 |
解码图像并提取感兴趣区域。 |
|
CPU, 混合 |
从内存缓冲区(例如,由外部源提供)解码视频文件。 |
|
CPU, 混合 |
从内存缓冲区流式传输和解码视频。用于长视频和高分辨率视频。 |
|
CPU, GPU |
从目录读取 Fits 图像 HDU。 |
|
CPU, GPU |
使用 FFmpeg 加载和解码视频文件。 |
|
CPU |
从由 1D 字节数组表示的编码文件名读取原始文件内容。 |
|
CPU, GPU |
对输入应用高斯噪声。 |
|
CPU, GPU |
对输入应用椒盐噪声。 |
|
CPU, GPU |
对输入应用散粒噪声。 |
|
混合 |
从内存缓冲区(例如,由外部源提供)解码视频文件。 |
|
CPU |
从 |
|
CPU |
从给定的 1D 数组生成随机样本。 |
|
CPU, GPU |
生成遵循伯努利分布的随机布尔值。 |
|
CPU, GPU |
生成遵循正态分布的随机数。 |
|
CPU, GPU |
生成遵循均匀分布的随机数。 |
|
CPU |
从 Caffe LMDB 读取(图像、标签)对。 |
|
CPU |
从 Caffe2 Lightning 内存映射数据库 (LMDB) 读取样本数据。 |
|
CPU |
从 COCO 数据集读取数据,该数据集由带有图像和注释 JSON 文件的目录组成。 |
|
CPU |
读取文件内容并返回文件-标签对。 |
|
CPU |
从 MXNet RecordIO 读取数据。 |
|
CPU |
从 NVIDIA NeMo 兼容清单读取自动语音识别 (ASR) 数据(音频、文本)。 |
|
CPU, GPU |
从目录读取 Numpy 数组。 |
|
CPU |
从表示流集合的目录读取 [帧] 序列。 |
|
CPU |
从 TensorFlow TFRecord 文件读取样本。 |
|
GPU |
使用 FFmpeg 和 NVDECODE 加载和解码视频文件,NVDECODE 是 NVIDIA(R) GPU 中的硬件加速视频解码功能。 |
|
GPU |
使用 FFmpeg 和 NVDECODE 加载、解码和调整视频文件大小,NVDECODE 是 NVIDIA GPU 的硬件加速视频解码。 |
|
CPU |
webdataset 格式的读取器。 |
|
CPU, GPU |
获取沿指定轴的最大输入元素。 |
|
CPU, GPU |
获取沿指定轴的元素的平均值。 |
|
CPU, GPU |
获取沿指定轴的元素的均方值。 |
|
CPU, GPU |
获取沿指定轴的最小输入元素。 |
|
CPU, GPU |
获取沿指定轴的元素的均方根值。 |
|
CPU, GPU |
获取沿指定轴的元素的标准差。 |
|
CPU, GPU |
获取沿指定轴的元素的总和。 |
|
CPU, GPU |
获取沿指定轴的元素的方差。 |
|
CPU |
在掩码中选择随机像素坐标,从均匀分布中采样。 |
|
CPU |
从掩码中随机选择一个对象并返回其边界框。 |
|
CPU |
按掩码 ID 选择多边形的子集。 |
|
CPU |
组合两个或多个仿射变换。 |
|
CPU |
生成将参考坐标空间映射到另一个坐标空间的仿射变换矩阵。 |
|
CPU |
生成旋转仿射变换矩阵。 |
|
CPU |
生成缩放仿射变换矩阵。 |
|
CPU |
生成剪切仿射变换矩阵。 |
|
CPU |
生成平移仿射变换矩阵。 |