视觉边缘洞见软件包

ID 772621
日期 5/13/2021
Public

硬件加速的单对象和多对象检测

本教程使用了名为“对象检测 YOLO* V3 Python* 演示”的示例应用程序。对象检测 YOLO V3 Python 演示使用 OpenVINO™ 的组件 OpenCV,来显示带有检测结果的框架,检测结果将显示为边界框和标签(如果提供)。默认情况下,此示例应用程序显示:

  • OpenCV 时间:帧解码、渲染边界框、标签和结果的时间。

  • 检测时间:对象检测网络的推理时间。仅在同步模式下报告检测时间。

  • 挂钟时间:组合的应用程序级性能。

本教程提供了三种硬件配置的说明,以便您可以选择适合您的系统配置,无论您的系统是否使用:

对于每种配置,该样本演示了两种检测类型:

  • 单一检测使用基本数据集执行一对一的检测。

  • 多检测使用高级数据集执行多对象检测,例如人和汽车。

在运行示例应用程序时,您将熟悉英特尔® 发行版 OpenVINO™ 工具套件

CPU 上具有硬件加速功能的单对象和多对象检测

在目标系统上运行这些步骤。

步骤 1:初始化英特尔® 发行版 OpenVINO™ 工具套件的环境

  1. 打开一个终端窗口。

  2. 转到对象检测 YOLO V3 Python 演示所在的示例应用程序目录:

    cd $HOME/Downloads/YOLOv3

  3. 初始化 OpenVINO™ 环境:

    source /opt/intel/openvino_2021/bin/setupvars.sh

将终端窗口保持打开状态以进行下一步。

步骤 2:在 CPU 上运行单一检测应用程序

  1. 运行对象检测 YOLO V3 Python 演示示例应用程序:

    python3 object_detection_demo.py -i $HOME/Downloads/YOLOv3/Sample_videos/one-by-one-person-detection.mp4 -m $HOME/Downloads/YOLOv3/tensorflow-yolo-v3/FP32/frozen_darknet_yolov3_model.xml -t 0.1 -at yolo

    通过在边框中显示单个个体的图像表示成功。在图像的左侧,您可以看到推理时间。如果场景组件的颜色与边框或文本的颜色相同,则可能看不到某些边框和检测结果。


  2. 按下键盘上的 Tab 键来更改异步模式选项。

  3. 按 Esc 键退出演示。

将终端窗口保持打开状态以进行下一步。

步骤 3:在 CPU 上运行多检测应用程序

  1. 运行对象检测 YOLO V3 Python 演示示例应用程序:

    python3 object_detection_demo.py -i $HOME/Downloads/YOLOv3/Sample_videos/person-bicycle-car-detection.mp4 -m $HOME/Downloads/YOLOv3/tensorflow-yolo-v3/FP32/frozen_darknet_yolov3_model.xml -t 0.1 -at yolo

    通过显示一个或多个对象和/或人的图像来表示成功。在图像的左侧,您可以看到推理时间。如果场景组件的颜色与边框或文本的颜色相同,则可能看不到某些边框和检测结果。



  2. 按下键盘上的 Tab 键来更改异步模式选项。

  3. 按 Esc 键退出演示。

如果要在 GPU 或英特尔® Vision Accelerator 上运行示例应用程序,请保持终端窗口打开,并从 GPU英特尔® Vision Accelerator 说明的步骤 2 开始。

GPU 上具有硬件加速功能的单对象和多对象检测

如果您使用了 CPU 指令并打开了终端窗口,请跳至步骤 2

在目标系统上运行这些步骤。

步骤 1:初始化英特尔® 发行版 OpenVINO™ 工具套件的环境

  1. 打开一个终端窗口。

  2. 转到对象检测 YOLO V3 Python 演示所在的示例应用程序目录:

    cd $HOME/Downloads/YOLOv3

  3. 初始化 OpenVINO™ 环境:

    source /opt/Intel/openvino_2021/bin/setupvars.sh

将终端窗口保持打开状态以进行下一步。

步骤 2:在 GPU 上运行单一检测应用程序

  1. 运行对象检测 YOLO V3 Python 演示示例应用程序:

    python3 object_detection_demo.py -i $HOME/Downloads/YOLOv3/Sample_videos/one-by-one-person-detection.mp4 -m $HOME/Downloads/YOLOv3/tensorflow-yolo-v3/FP32/frozen_darknet_yolov3_model.xml -d GPU -t 0.1 -at yolo

    通过在边框中显示单个个体的图像表示成功。在图像的左侧,您可以看到推理时间。如果场景组件的颜色与边框或文本的颜色相同,则可能看不到某些边框和检测结果。


  2. 按下键盘上的 Tab 键来更改异步模式选项。

  3. 按 Esc 键退出演示。

将终端窗口保持打开状态以进行下一步。

步骤 3:在 GPU 上运行多检测应用程序

  1. 运行对象检测 YOLO V3 Python 演示示例应用程序:

    python3 object_detection_demo.py -i $HOME/Downloads/YOLOv3/Sample_videos/person-bicycle-car-detection.mp4 -m $HOME/Downloads/YOLOv3/tensorflow-yolo-v3/FP32/frozen_darknet_yolov3_model.xml -d GPU -t 0.1 -at yolo

    通过显示一个或多个对象和/或人的图像来表示成功。在图像的左侧,您可以看到推理时间。如果场景组件的颜色与边框或文本的颜色相同,则可能看不到某些边框和检测结果。



  2. 按下键盘上的 Tab 键来更改异步模式选项。

  3. 按 Esc 键退出演示。

在英特尔®视觉加速器上通过硬件加速实现单对象和多对象检测

通过在英特尔® Vision Accelerator 上运行应用程序,您可以将推理处理工作转移到英特尔® Vision Accelerator 上,并为其他应用程序腾出了 CPU 资源。

如果您使用了 CPU 指令并打开了终端窗口,请跳至步骤 2

在目标系统上运行这些步骤。

步骤 1:初始化英特尔® 发行版 OpenVINO™ 工具套件的环境

  1. 打开一个终端窗口。

  2. 转到对象检测 YOLO V3 Python 演示所在的示例应用程序目录:

    cd $HOME/Downloads/YOLOv3

  3. 初始化 OpenVINO™ 环境:

    source /opt/Intel/openvino_2021/bin/setupvars.sh 

将终端窗口保持打开状态以进行下一步。

步骤 2:在英特尔® Vision Accelerator 运行单一检测应用程序

  1. 运行对象检测 YOLO V3 Python 演示示例应用程序:

    python3 object_detection_demo.py -i $HOME/Downloads/YOLOv3/Sample_videos/one-by-one-person-detection.mp4 -m $HOME/Downloads/YOLOv3/tensorflow-yolo-v3/FP32/frozen_darknet_yolov3_model.xml -d HDDL -t 0.1 -at yolo

    通过在边框中显示单个个体的图像表示成功。在图像的左侧,您可以看到推理时间。如果场景组件的颜色与边框或文本的颜色相同,则可能看不到某些边框和检测结果。


  2. 按下键盘上的 Tab 键来更改异步模式选项。

  3. 按 Esc 键退出演示。

将终端窗口保持打开状态以进行下一步。

步骤 3:在英特尔® Vision Accelerator 上运行多检测应用程序

  1. 运行对象检测 YOLO V3 Python 演示示例应用程序:

    python3 object_detection_demo.py -i $HOME/Downloads/YOLOv3/Sample_videos/person-bicycle-car-detection.mp4 -m $HOME/Downloads/YOLOv3/tensorflow-yolo-v3/FP32/frozen_darknet_yolov3_model.xml -d HDDL -t 0.1 -at yolo

    通过显示一个或多个对象和/或人的图像来表示成功。在图像的左侧,您可以看到推理时间。如果场景组件的颜色与边框或文本的颜色相同,则可能看不到某些边框和检测结果。



  2. 按下键盘上的 Tab 键来更改异步模式选项。

  3. 按 Esc 键退出演示。

结论和后续行动

在本教程中,您学习了使用示例应用程序“对象检测 YOLO V3 Python 演示”在不同的处理单元上运行推理应用程序。在此过程中,您将熟悉与视觉边缘洞见一起安装的英特尔® 发行版 OpenVINO™ 工具套件。

转到英特尔® 边缘软件配置器文档以了解如何使用该工具管理边缘软件包、创建和管理容器和虚拟机。

下一步,查看多摄像头检测社交距离参考实现