
5分钟快速上手用Hugging Face transformers加载并运行pvt_v2_b0图像分类【免费下载链接】pvt_v2_b0项目地址: https://ai.gitcode.com/hf_mirrors/OpenGVLab/pvt_v2_b0本教程带你用 Hugging Facetransformers库在 5 分钟内完成 pvt_v2_b0 图像分类模型的加载与运行从安装依赖到对第一张图片完成推理。pvt_v2_b0 是 OpenGVLab 基于 PVTv2Pyramid Vision Transformer v2的轻量级图像分类模型纯 CPU 即可运行非常适合初学者体验 Transformer 视觉模型。pvt_v2_b0 是什么30秒看懂这个模型PVTv2 是一个轻量级层级式视觉 Transformer 骨干网络它在 Transformer 层中融入卷积操作兼具 CNN 的高效局部特征提取能力与 Transformer 的长程依赖建模能力并输出多尺度特征图被 SegFormer、Deformable DETR 等主流视觉模型广泛采用。pvt_v2_b0中的b0表示 PVTv2 家族中最轻量的档位参数仅数百万是本地跑通的理想入门选择。整个仓库只有 4 个核心文件各司其职文件作用README.md模型说明与背景介绍config.json模型结构与分类标签设置model.safetensors模型权重文件preprocessor_config.json图像预处理参数几个关键架构参数可在 config.json 中确认architectures为PvtV2ForImageClassification参数取值含义hidden_sizes32 / 64 / 160 / 2564 个层级阶段的通道宽度num_attention_heads1 / 2 / 5 / 8各阶段注意力头数patch_sizes7 / 3 / 3 / 3各阶段的图像块大小sr_ratios8 / 4 / 2 / 1空间缩减比轻量化的关键torch_dtypefloat32权重精度第一步一键安装依赖只需安装transformers与 PyTorch无需编译任何源码pip install transformers torch pillow requests 若处于国内网络环境建议先把模型克隆到本地git clone https://gitcode.com/hf_mirrors/OpenGVLab/pvt_v2_b0之后把下文代码里的model_id换成本地目录pvt_v2_b0即可离线加载。第二步三步加载模型并跑通推理核心只有三件事加载预处理器 → 加载分类模型 → 送入图片。完整代码如下from transformers import AutoImageProcessor, AutoModelForImageClassification from PIL import Image import requests model_id OpenGVLab/pvt_v2_b0 # 1. 加载图像预处理器和图像分类模型 processor AutoImageProcessor.from_pretrained(model_id) model AutoModelForImageClassification.from_pretrained(model_id) # 2. 打开一张图片本地图片路径同样适用 url http://images.cocodataset.org/val2017/000000039769.jpg image Image.open(requests.get(url, streamTrue).raw) # 3. 预处理 推理 inputs processor(image, return_tensorspt) outputs model(**inputs) predicted_id outputs.logits.argmax().item() print(预测索引:, predicted_id) print(标签:, model.config.id2label[predicted_id])运行后即可输出图片的分类索引与标签。该模型已在 ImageNet-1k 上微调共 1000 类见 config.json 中的id2label结果可放心参考。⚡ 赶时间的话transformers的pipelineAPI 两行搞定from transformers import pipeline clf pipeline(image-classification, modelOpenGVLab/pvt_v2_b0) print(clf(image)[0])第三步理解自动图像预处理做了什么把图片交给processor后PvtImageProcessor会按 preprocessor_config.json 的参数自动完成三件事缩放统一缩放到 224×224双线性插值缩放像素值从 0~255 归一到 0~1标准化按 ImageNet 均值[0.485, 0.456, 0.406]、标准差[0.229, 0.224, 0.225]做标准化。 这些参数与训练时完全一致模型看到的数据分布因此保持一致——你无需手写任何预处理代码。常见问题Q预测结果为什么是LABEL_46这样的占位名A该检查点的标签表使用的是占位名称LABEL_0 ~ LABEL_999。如需显示真实类别名把预测索引自行映射到 ImageNet-1k 类别名列表即可。Q必须用 GPU 吗A不用。b0 是小型模型CPU 上推理速度也很快代码中不加.to(cuda)即可。Q输入图片分辨率可以随便改吗A建议保持 224×224这是模型训练所用的分辨率换其他尺寸可能影响准确率。恭喜到这里你已经用 5 分钟完成了 pvt_v2_b0 图像分类模型的加载与推理。接下来可以尝试替换成自己的图片、批量处理整个文件夹或用Trainer对它做微调。【免费下载链接】pvt_v2_b0项目地址: https://ai.gitcode.com/hf_mirrors/OpenGVLab/pvt_v2_b0创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考