AI News HubLIVE
站内改写2 分钟阅读

关于Qualcomm AI Hub模型用于分类、目标检测和硬件感知部署的实战编码教程

本教程提供了使用Qualcomm AI Hub模型的端到端工作流程,涵盖设置、本地推理(MobileNet-V2和YOLOv7)以及通过云设备管道进行编译和部署。

来源MarkTechPost作者: Sana Hassan

本教程详细介绍了如何在Google Colab中使用Qualcomm AI Hub模型完成从本地推理到云端设备部署的完整工作流程。首先,我们需要搭建运行环境。通过pip安装qai_hub_models包,并创建一个输出目录用于保存所有结果文件。由于Qualcomm AI Hub模型期望输入张量采用通道优先(NCHW)格式,而许多图像处理库默认使用通道在后(NHWC)格式,因此我们定义了to_nchw()函数来进行必要的形状转换。该函数能够自动处理3维或4维张量,并调整通道顺序。

接着,我们探索Qualcomm AI Hub提供的模型集合。通过导入相关模块,我们可以列出所有可用的模型ID,了解平台支持的范围。以MobileNet-V2为例,我们加载预训练模型并设置评估模式。通过模型的get_input_spec()方法获取输入规范,并确定第一个输入的名称。同时,我们准备ImageNet类别标签,并编写top5()函数,用于从模型输出的logits中提取概率最高的五个类别及其置信度。

第一步推理使用模型自带的示例输入。我们将示例输入传入to_nchw()调整形状后,喂给MobileNet-V2模型,输出前五个预测结果。然后,我们从网络下载一张真实的狗的图像。使用torchvision的transforms进行预处理,包括调整大小至256像素、中心裁剪至224像素,并转换为张量。将处理后的图像输入模型,再次输出前五个预测,并显示图像以及最可能的标签,从而直观地将模型输出与输入图像联系起来。

为了验证更复杂的场景,我们封装了run_demo()函数,用于执行Qualcomm AI Hub提供的官方命令行演示。首先运行MobileNet-V2的演示,然后安装额外的YOLOv7包,运行目标检测演示。YOLOv7演示会生成带有检测框的输出图像。我们查找最近生成的结果图像并显示,以验证对象检测效果。

本教程还包含一个可选的云端设备部署环节,前提是配置了有效的API令牌。通过qai_hub库连接Qualcomm的云服务平台,获取可用的设备列表,例如三星Galaxy S24。我们使用torch.jit.trace将PyTorch模型追踪为TorchScript格式,然后提交编译作业,将其转换为TFLite格式。编译完成后,在目标设备上提交性能分析作业和推理作业,并下载设备上的推理结果。最后,我们解析设备输出,显示前五个预测类别,并将编译后的TFLite模型保存到本地目录。

通过本教程,我们掌握了从本地实验到硬件感知部署的完整流程。Qualcomm AI Hub提供了一条清晰的路径,使开发者能够在真实的Qualcomm设备上高效运行和优化AI模型。整个过程涵盖了环境配置、模型加载、输入预处理、本地推理、官方Demo执行以及云端编译和部署,最终实现了从Colab到实际硬件的无缝迁移。注意:云端部分需要先设置API令牌,可通过workbench.aihub.qualcomm.com获取,并使用qai-hub configure --api_token YOUR_TOKEN进行配置。本教程的完整代码和笔记本可通过提供的链接获取。欢迎关注MarkTechPost获取更多AI相关内容。