【Atlas 200I DK A2 体验】部署样例 sampleYOLOV7MultiInput

【Atlas 200I DK A2 体验】部署样例 sampleYOLOV7MultiInput

1、Atlas 200I DK A2 开箱

​ 参考开发者套件文档,一步步由制卡、到远程连接、再到网络配置等,都有比较详细的教程,并且还提供多种可供开发者选择的配置方法,个人感觉开发者套件文档挺不错的。产品介绍部分还有3D结构分解等外观呈现方式,个人觉得也挺有意思的,不需要手动拆分,就可以更深入了解开发板硬件的组成部分。另一个比较令我惊艳的部分是双网口设置,曾经在使用串口加网线连接嵌入式开发板的时候,就想着为什么不设置双网口更方便一点呢!在这给 Atlas 200I DK A2 双网口设计点个赞!附上开箱照吧!
在这里插入图片描述

2、样例迁移部署

​ 想着昇腾提供了 AscendCL 的编程接口,那就体验一下使用社区提供的样例进行实操一下吧。应用案例文档说明步骤也挺详细的,在实操过程中注意查看开发板安装 Ascend 的路径和开发者套件提供的设置是否一致,可以通过 shell 脚本直接查看环境变量是否设置成功。

样例介绍:

功能:使用 yolov7 模型对输入数据进行预测推理,推理检测出图片 / 视频中所有可检测物体,并将推理结果打印到输出上,是一个是基于多路、多线程方案实现的高性能案例,通过多卡并行处理多路数的数据并输出,支持多种输入输出。
样例输入:原始图片 jpg 文件 / 视频 mp4 文件/视频 h26X 文件 /rtsp 视频流。
样例输出:带推理结果的图片 / 带推理结果的视频文件 /rtsp 视频流展示 /cv::imshow 窗口展示 / 打屏显示。

样例流程图:

通用目标检测与识别一站式方案是一个是基于多路、多线程方案实现的高性能案例,通过多卡并行处理多路数的数据并输出。 其中整体流程图如下所示:
在这里插入图片描述

  • 管理线程:将线程和队列打包在一起,并完成进程创建、消息队列创建、消息发送和消息接收守护。
  • 数据输入线程:对输入图片或视频进行解码。
  • 数据预处理线程:对数据输入线程传过来的 YUV 图片进行处理(resize等操作)。
  • 推理线程:使用 YOLOV7 模型进行推理。
  • 数据后处理线程:分析推理结果,输出框点及标签信息。
  • 数据输出线程:将框点及标签信息标识到输出数据上。

实验设备:

在这里插入图片描述
作用:
作为软件部署的 host 侧(用 CPU)
作为推理芯片,进行模型推理(用 NPU)

开发方式:
其他

开发资源:

样例:https://gitee.com/ascend/samples/tree/master/inference/modelInference/sampleYOLOV7MultiInput
开发者套件:https://www.hiascend.com/document/detail/zh/Atlas200IDKA2DeveloperKit/23.0.RC1/pd/pd_0001.html

单张图像推理结果:

在这里插入图片描述

问题及解决方法:

(1)编译项目遇到的问题

Build 工程中出现的错误:
在这里插入图片描述
问题定位:
在这里插入图片描述
​ main.cpp 使用了 ifstream 定义的对象,但是没有包含其头文件。

问题解决:
​ 在 main.cpp 中,添加 #include 即可。

(2)运行推理过程遇到的问题

视频推理出现的错误
​ 设置输入MP4视频文件,输出保存离线MP4视频文件的配置流程,会存以下错误:
在这里插入图片描述
​ 在 gitee Ascend/sample 社区 Issues 上查看到是内存占满问题,先附上 issue 网址吧 https://gitee.com/ascend/samples/issues/I6WLWO?from=project-issue,后续继续跟近问题解决方案。未完,待续 …

3、总结

​ 在 Atlas 200I DK A2 初次实操由模型转换,到应用部署,通过参考开发者文档和应用案例,个人觉得还是有较多的收获和成就感的,同时还可以学习到不少东西。当然这不能仅局限在开发者文档和应用案例按部就班的操作,得适当地拓展学习,比如:环境变量设置的原理、cmake 如何协助交叉编译、思考 AscendCL 底层封装的思想等,或许这也是我们开发者可以进一步提升自己的途径之一吧。

参考资料

[1] https://gitee.com/ascend/samples/tree/master/inference/modelInference/sampleYOLOV7MultiInput
[2] https://www.hiascend.com/document/detail/zh/Atlas200IDKA2DeveloperKit/23.0.RC1/pd/pd_0001.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值