样例使用指导【免费下载链接】geGEGraph Engine是面向昇腾的图编译器和执行器提供了计算图优化、多流并行、内存复用和模型下沉等技术手段加速模型执行效率减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge功能描述该样例主要是基于Onnx ResNet-50网络单输入、单Batch实现多batch场景下图片分类的功能。在该样例中先使用样例提供的脚本transfer_pic.py将2张*.jpg图片都转换为*.bin格式同时将图片从1024*683的分辨率缩放为224*224。解析resnet50模型然后直接对2张图片batch值为2进行推理得到推理结果再对推理结果进行处理输出top5置信度的类别标识。目录结构├── data │ ├── dog1_1024_683.jpg // 测试数据,需要按指导获取测试图片,放到data目录下 │ ├── dog2_1024_683.jpg // 测试数据,需要按指导获取测试图片,放到data目录下 ├── model │ ├── resnet50_Opset16.onnx // Onnx ResNet-50网络的模型文件 ├── scripts │ ├── build.sh // sample编译脚本 │ ├── run.sh // sample运行脚本 │ ├── transfer_pic.py // 将*.jpg转换为*.bin同时将图片从1024*683的分辨率缩放为224*224 ├── src │ ├── CMakeLists.txt // 编译配置脚本 │ ├── sample_dynamic_batch.cpp // 主函数图片分类功能的实现文件 ├── CMakeLists.txt // 编译脚本调用src目录下的CMakeLists文件环境要求通过安装指导 环境准备 正确安装toolkit和ops包设置环境变量假设包安装在/usr/local/Ascend/source /usr/local/Ascend/cann/set_env.sh实现步骤以运行用户登录开发环境。下载代码并上传至环境后请先进入根目录下examples/gesession/sample_dynmaic_batch样例目录。请注意下文中的样例目录均指examples/gesession/sample_dynmaic_batch目录。准备ResNet-50模型。获取ResNet-50原始模型。您可以从以下链接中获取ResNet-50网络的模型文件并以运行用户将获取的文件上传至开发环境的样例目录/model目录下。如果目录不存在需要自行创建。ResNet-50网络的模型文件*.onnx单击Link下载该文件。准备测试图片。请从以下链接获取该样例的输入图片并以运行用户将获取的文件上传至开发环境的样例目录/data目录下。如果目录不存在需自行创建。https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/models/aclsample/dog1_1024_683.jpghttps://obs-9be7.obs.cn-east-2.myhuaweicloud.com/models/aclsample/dog2_1024_683.jpg切换到“样例目录/data“目录下执行transfer_pic.py脚本将*.jpg转换为*.bin同时将图片从1024*683的分辨率缩放为224*224。在“样例目录/data“目录下生成2个*.bin文件。python3 ../scripts/transfer_pic.py如果执行脚本报错“ModuleNotFoundError: No module named PIL”则表示缺少Pillow库请使用pip3 install Pillow --user命令安装Pillow库。构建验证以运行用户登录开发环境。请先进入根目录下examples/gesession/sample_dynmaic_batch样例目录。请注意下文中的样例目录均指examples/gesession/sample_dynmaic_batch目录。切换到样例目录/scripts,编译程序。bash build.sh运行程序bash run.sh执行结果执行成功后在屏幕上的关键提示信息示例如下提示信息中的index表示类别标识、value表示该分类的最大置信度这些值可能会根据版本、环境有所不同请以实际情况为准[INFO] SAMPLE start to execute. [INFO] Initialize ge success [INFO] Set device 0 success [INFO] Parse model ../model/resnet50_Opset16.onnx success [INFO] Graph add success [INFO] Graph compile success [INFO] Start to process file:../data/dog1_1024_683.bin [INFO] Start to process file:../data/dog2_1024_683.bin [INFO] Graph run success [INFO] Result of picture 1: [INFO] top 1: index[162] value[xxxxxx] [INFO] top 2: index[161] value[xxxxxx] [INFO] top 3: index[166] value[xxxxxx] [INFO] top 4: index[167] value[xxxxxx] [INFO] top 5: index[163] value[xxxxxx] [INFO] Result of picture 2: [INFO] top 1: index[267] value[xxxxxx] [INFO] top 2: index[266] value[xxxxxx] [INFO] top 3: index[265] value[xxxxxx] [INFO] top 4: index[153] value[xxxxxx] [INFO] top 5: index[99] value[xxxxxx] [INFO] Output data success [INFO] SAMPLE PASSED说明类别标签和类别的对应关系与训练模型时使用的数据集有关本样例使用的模型是基于imagenet数据集进行训练的您可以在互联网上查阅imagenet数据集的标签及类别的对应关系。 当前屏显信息中的类别标识与类别的对应关系如下 161: [basset, basset hound]、 267: [standard poodle]。【免费下载链接】geGEGraph Engine是面向昇腾的图编译器和执行器提供了计算图优化、多流并行、内存复用和模型下沉等技术手段加速模型执行效率减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考