运行应用

样例步骤适用于以下产品。

  • Atlas 200/300/500 推理产品
  • Atlas 推理系列产品
  • Atlas 训练系列产品

模型转换

  1. 以HwHiAiUser(运行用户)登录开发环境。
  2. 参见ATC工具使用指南中的ATC工具使用环境搭建,获取ATC工具并设置环境变量。
  3. 准备数据。

    从以下链接获取ResNet-50网络的权重文件(*.caffemodel)、模型文件(resnet50.prototxt),并以HwHiAiUser(运行用户)将获取的文件上传至开发环境的“vdec_resnet50_classification/caffe_model”目录下。

    • 从gitee上获取:单击Link,查看README.md,查找获取原始模型的链接。
    • 从GitHub上获取:单击Link,查看README.md,查找获取原始模型的链接。

  4. 将ResNet-50网络转换为适配昇腾AI处理器的离线模型(*.om文件),转换模型时,需配置色域转换参数,用于将YUV420SP格式的图片转换为RGB格式的图片。

    切换到“vdec_resnet50_classification”目录,执行如下命令。Ascendxxx为使用的昇腾AI处理器型号,请用户自行替换。

    atc --model=caffe_model/resnet50.prototxt --weight=caffe_model/resnet50.caffemodel --framework=0 --output=model/resnet50_aipp --soc_version=Ascendxxx --insert_op_conf=caffe_model/aipp.cfg
    • “--output”参数:生成的“resnet50_aipp.om”文件存放在“vdec_resnet50_classification/model”目录下。
    • 使用atc命令时用户需保证对“vdec_resnet50_classification”目录有写权限。

  5. 以HwHiAiUser(运行用户)将开发环境的样例目录及目录下的文件上传到运行环境。

运行应用

  1. 登录运行环境。
  2. 准备输入视频码流。

    通过链接vdec_h265_1frame_rabbit_1280x720.h265获取输入视频码流文件“vdec_h265_1frame_rabbit_1280x720.h265”,并以HwHiAiUser(运行用户)上传至开发环境的“vdec_resnet50_classification/data”目录下。

  3. 参照环境变量配置完成运行环境的配置。
  4. “vdec_resnet50_classification”路径下执行如下命令:

    python3 ./src/acl_sample.py

  5. 执行成功后,在屏幕上的关键提示信息示例如下(因打印信息过长,省略部分打印信息)

    init resource stage:
    init resource stage success
    [Model] class Model init resource stage:
    [Model] create model output dataset:
    [Model] create model output dataset success
    [Model] class Model init resource stage success
    [Dvpp] class Dvpp init resource stage:
    [Dvpp] class Dvpp init resource stage success
    [Vdec] class Vdec init resource stage:
    [Vdec] class Vdec init resource stage success
    [Vdec] forward index:0
    [Vdec] create input stream desc success
    [Vdec] create output pic desc success
    [Vdec] vdec_send_frame stage success
    ......
    [Vdec] [_callback] _callback exit success
    [Vdec] [_thread_func] _thread_func out
    [Vdec] vdec finish!!!
    
    [Dvpp] vpc resize stage:
    [Dvpp] vpc resize stage success
    [Model] create model input dataset:
    [Model] create model input dataset success
    [Model] execute stage:
    [Model] execute stage success
    
    ========= top5 inference results: =========
    label:331  prob: 0.910156
    label:330  prob: 0.078308
    label:104  prob: 0.009209
    label:332  prob: 0.003283
    label:350  prob: 0.000005
    result: class_label[331],top1[0.910156],top5[1.000000]
    ......
    [Sample] release source stage:
    [Dvpp] class Dvpp release source success
    [Model] class Model release source success
    [Vdec] release resource:
    [Vdec] release resource success
    [Sample] release source stage success