概述
该应用可部署至Atlas 200 DK或者AI加速云服务器上,基于yolov3检测网络,通过读取本地视频文件作为输入数据,对视频帧中的物体进行目标检测,并将检测的结果展示在PC网页上。
原理
1.运行管理资源申请:用于初始化系统内部资源,ACL固定的调用流程。
2.加载模型文件并构建输出内存:从文件加载离线模型数据,根据内存中加载的模型获取模型的基本信息包含模型输入、输出数据的数据buffer大小;由模型的基本信息构建模型输出内存,为接下来的模型推理做好准备。
3.读取本地视频并进行预处理:使用opencv打开本地视频文件,循环读取每一帧图像数据,将图像数据缩放至模型要求的宽高比例;然后构建模型的输入数据。
4.模型推理:根据构建好的模型输入数据,调用模型推理接口,进行模型推理。
5.解析推理结果:根据模型输出解析目标检测的结果,得到图像数据中检测到的目标框,检测到的物体类别以及相似度,然后调用Presenter Agent的接口发送到主机端上部署好的Presenter Server服务进程,进行Web UI展示。
6.Presenter Server接收推理结果:Presenter Server根据接收到的推理结果,在JPEG图片上进行目标框位置及目标的类别和置信度的标记,并将图像信息推送给主机端Web Ul,通过浏览器访问Presenter Server, 实时查看视频中的各类物体检测信息。
技术
- 基于华为Ascend 310芯片。- 基于Caffe的yolov3目标检测模型,使用ATC模型转换工具将其转换为Ascend 310芯片支持的模型。
硬件
Atlas 200 Developer Kit开发者板Ai1 弹性云服务器