布线提醒:DALI 信号线和 220V 强电线保持间距,不要同管走线;单条总线总长控制在 300m 内。
# CUDA 12.x 推荐
pip install nvidia-dali-cuda120
# CUDA 11.8
pip install nvidia-dali-cuda118
支持系统:Linux 最优,Windows 可用,纯 CPU 环境无法使用 GPU 加速。
from nvidia.dali import pipeline_def
import nvidia.dali.fn as fn
import nvidia.dali.types as types
from nvidia.dali.plugin.pytorch import DALIClassificationIterator
# 定义预处理流水线
@pipeline_def(batch_size=8, num_threads=2, device_id=0)
def dali_train_pipe():
images, labels = fn.readers.file(
file_root="你的图片根目录",
random_shuffle=True
)
images = fn.decoders.image(images, device="mixed")
images = fn.resize(images, size=(224, 224))
images = fn.crop_mirror_normalize(
images,
mean=[128, 128, 128],
std=[128, 128, 128],
dtype=types.FLOAT
)
return images, labels
# 初始化迭代器,替代原生 DataLoader
pipe = dali_train_pipe()
pipe.build()
dali_loader = DALIClassificationIterator(pipe, reader_name="Reader")
# 遍历数据(训练循环直接用)
for data in dali_loader:
imgs = data[0]["data"]
lbls = data[0]["label"]
print(imgs.shape, lbls.shape)
dali_loader.reset()
device="mixed":CPU 解码 + GPU 运算,兼容性最好,新手首选。num_threads:根据 CPU 核心数设置,一般 2~8 即可。batch_size。file_root 路径、文件格式(仅支持主流图片 / 视频格式)。声明:
1.本站主要是为了记录工作学习中遇到的问题,可能由于本人技术有限,内容难免有纰漏,一切内容仅供参考。
2.本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!
3.本站所有原创作品,包括文字、资料、图片、网页格式,转载时请标注作者与来源。
------------------------------------------------------------------------------------------------
出处:网际迅联
网址1:https://www.wjxlkj.com
联系方式:
手机号码:13910758317
微信:13910758317
客服QQ:58053012
或下图二维码微信扫码或长按识别添加微信