对于边缘器件 - 3.5 简体中文

Vitis AI Library 用户指南 (UG1354)

Document ID
UG1354
Release Date
2023-06-29
Version
3.5 简体中文
Vitis AI 运行时包和 Vitis AI Library 样本与模型都已编译到预构建的 Vitis AI 开发板镜像中。您可直接运行示例。如有新程序,请在主机侧对其进行编译并将可执行程序复制到目标。
  1. 使用 scp 命令将 vitis_ai_library_r3.5.0_images.tar.gzvitis_ai_library_r3.5.0_video.tar.gz 从主机复制到目标,如下所示:
    [Host]$scp vitis_ai_library_r3.5.0_images.tar.gz root@IP_OF_BOARD:~/
    [Host]$scp vitis_ai_library_r3.5.0_video.tar.gz root@IP_OF_BOARD:~/
  2. 在目标上解压镜像和视频程序包。
    cd ~
    tar -xzvf vitis_ai_library_r3.5*_images.tar.gz -C Vitis-AI/examples/vai_library
    tar -xzvf vitis_ai_library_r3.5*_video.tar.gz -C Vitis-AI/examples/vai_library
  3. 进入目标开发板上示例的解压后目录,然后编译示例。以 classification 为例。
    cd ~/Vitis-AI/examples/vai_library/samples/classification
  4. 运行示例。
    ./test_jpeg_classification resnet50_pt sample_classification.jpg
    注释: 它支持批处理模式。如果 DPU 批次数大于 1,也可运行以下命令。
    ./test_jpeg_classification resnet50_pt <img1_url> [<img2_url> ...]
  5. 查看运行结果。

    有两种方法可用于查看结果:一种方法是通过打印信息来查看结果。另一种方法是通过下载 0_sample_classification_result.jpg 图像来查看结果。

  6. 要运行视频示例,请运行以下命令:
    ./test_video_classification resnet50_pt video_input.webm -t 8

    其中,video_input.webm 与输入的视频文件名相同,-t 即线程数。您必须自行准备视频。

    注释:
    • 预构建的 Vitis AI 开发板镜像仅支持 webmraw 格式的视频文件输入。如果要使用的视频文件格式与原生支持的格式不同,则必须在目标上安装相关程序包,例如,ffmpeg 程序包。
    • 如果使用显示器作为处理后的视频的宿端,那么性能将受到目标上的显示接口所支持的最大帧率的限制。这可能无法反映最大性能,如果您已启用多线程来对最大帧率进行基准测试,那么知晓这一事实就尤为重要。但您可发出以下命令来测试 Vitis AI Library 的最大推断性能:
      env DISPLAY=:0.0 DEBUG_DEMO=1 ./test_video_classification \
      resnet50_pt 'multifilesrc location=~/video_input.webm \
      ! decodebin  !  videoconvert ! appsink sync=false' -t 2
  7. 要以 USB 摄像头作为输入来测试程序,请运行以下命令:
    ./test_video_classification resnet50_pt 0 -t 4

    此处 0 是首个 USB 摄像头器件节点。如有多个 USB 摄像头,则该值为 1、2、3 以此类推,其中 -t 表示线程数。

    重要: 由于 test_video 示例需要 Linux 窗口子系统目标才能正常工作,使用 SSH 终端登录开发板时,请使用以下命令启用 X11 前传(在此示例中假设主机 IP 地址为 192.168.0.10)。
    export DISPLAY=192.168.0.10:0.0
  8. 要测试模型性能,请运行以下命令:
    ./test_performance_classification resnet50_pt test_performance_classification.list -t 8 -s 60 

    此处,-t 是线程数,-s 是秒数。

    要查看可执行文件的命令行选项的完整列表,请搭配 '-h' 开关来运行该命令。

  9. 要运行演示,请参阅 应用演示