基于CANN的AI推理最佳实践丨多路极致性能目标检测应用设计解密

当前人工智能领域,最热门的无疑是以ChatGPT为代表的各种“新贵”大模型,它们高高在上,让你无法触及。但在人们的日常生活中,实际应用需求最大的还是以Yolo模型为代表的目标检测“豪强”,它们每天都在以各种方式落地、应用于我们日常生活的方方面面。

目标检测是计算机视觉领域的一项关键技术,它的任务是找出图像中所有感兴趣的目标,确定它们的类别和位置。随着人工智能潜移默化地渗入人们的生活中,各行各业竞相通过引入目标检测等技术打开市场空间,关于目标检测的各类人工智能需求也奔涌而来,比如:

  • 在交通领域,目标检测可以用来检测道路上的行人、车辆、交通标志等物体,提升行驶安全和通行便利性。
  • 在安全领域,目标检测可以用来检测关键特征、特定行为或者可疑物体,以便快速发现和识别安全威胁。
  • 在医疗领域,目标检测可以用来识别身体部位、病灶、心电图、CT影像等,以便快速辅助诊断。
  • 在生活领域,目标检测可以用于智能购物、智能家居等场景,提升人们生活的便利性。

但AI应用开发门槛高,周期长。各类AI软件栈理解成本高、AI算法模型与业务结合难度高、对开发人员的技能要求也较高。如何提升AI推理应用的开发效率,降低开发门槛,是亟需改善的现状。为此,昇腾CANN技术专家设计和开发了针对目标检测应用的最佳实践,让开发者可以在昇腾平台上快速部署目标检测应用,轻松获得几十甚至上百路的检测效果。下面我们就来详细拆解一下这个实践的设计思路。

基础应用分解

我们首先从一个基础的目标检测推理应用场景开始,推理流程通常包含如下几个部分:

GPU AI推理业务流程

  1. 数据输入是摄像头获取的视频数据流,一般以H.264格式为主。
  2. 然后通过FFmpeg软件,将连续的视频流进行拆帧和解码。
  3. 下一阶段是对解码后的图像进行预处理,通常使用OpenCV对图像进行缩放,得到模型需要的图像规格。
  4. 模型推理环节,用户可以选择的方式比较多,比较典型的是使用TensorRT进行推理应用开发。
  5. 目标检测后处理需要进行NMS计算,进行图片画框等操作。
  6. 数据输出阶段,用户根据需要实现一个结果呈现形式。

推理功能适配

将上面介绍的目标检测应用迁移到昇腾平台,开发者仅需关注“推理”环节的适配,包括如下两个步骤:

  1. 将推理模型文件(onnx模型或pb模型)通过ATC工具转化为昇腾平台专属的离线om文件。
  2. 使用昇腾AscendCL语言开发模型加载和模型执行的逻辑。

基于CANN的AI推理业务流程

完成如上两个环节后,推理应用的功能就已经迁移到昇腾平台了。这时若整体的推理性能未达到理想预期,就需要进入性能优化提升阶段。

性能提升方式一:使能DVPP硬件的高效编解码能力

DVPP(Digital Vision Pre-Processing,数字视觉预处理)是昇腾AI处理器内置的图像处理单元,通过AscendCL媒体数据处理接口提供强大的媒体处理硬加速能力,主要包括以下功能:

  • VPC(Vision Preprocessing Core):处理YUV、RGB等格式的图片,包括缩放、抠图、色域转换等。
  • JPEGD(JPEG Decoder):JPEG压缩格式→YUV格式的图片解码。
  • JPEGE(JPEG Encoder):YUV格式→JPEG压缩格式的图片编码。
  • VDEC(Video Decoder):H264/H265格式→YUV/RGB格式的视频码流解码。
  • VENC(Video Encoder):YUV420SP格式→H264/H265格式的视频码流编码。
  • PNGD(PNG Decoder):PNG格式→RGB格式的图片解码。

Ascend 310 AI处理器逻辑架构中DVPP位置

开发者可以通过DVPP对图像进行硬件解码和处理,提升图像处理效率。另外,DVPP和执行推理的计算单元AI Core是完全独立的硬件单元,无需担心使用DVPP后会对推理执行的性能产生影响。

基于CANN的AI推理业务流程——使用DVPP进行数据预处理

性能提升方式二:增加推理前后数据并行,让推理步骤一刻不停

昇腾平台采用异构计算架构,所以要充分利用计算核心AI Core的超强能力,就需要保证AI Core计算需要的数据能够持续不间断供给,同时能够无等待输出。为了实现此能力,可以在数据预处理→模型推理,模型推理→数据后处理模块间通过队列的机制,增加推理模块的并行流水。

基于CANN的AI推理业务流程——通过队列增加推理并行流水

同理,在FFmpeg视频拆帧和DVPP处理之间,也可以使用队列,进一步增加并行情况。但需要注意推理侧的队列数据会消耗硬件内存,所以需要要合理设置。

性能提升方式三:多线程并发,持续释放AI Core性能

多线程是提升硬件资源利用率的重要手段,通过多线程的支持,可以实现多路不同源的视频输入;针对服务器多卡的场景,同样支持多个卡并行执行,充分释放昇腾软硬件的性能。

基于CANN的AI推理业务流程——多线程并发

基于目标检测最佳实践,开发者可轻松实现已有AI推理应用到昇腾平台的迁移,并轻松达成高性能。开发者也可以参考此实践快速上手AI开发,玩转昇腾平台推理应用。未来,CANN将持续致力于应用开发的易用性提升,不断满足开发者的诉求。

点击Link,获取多路高性能目标检测最佳实践源码。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/62681.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

在神经网络中,牢不可破的锁可以隐藏看不见的门

来源:ScienceAI 编译:白菜叶 机器学习正在风靡。然而,即使像 DALLE 2 这样的图像生成器和像 ChatGPT 这样的语言模型成为头条新闻,专家们仍然不明白为什么它们工作得这么好。这使得很难理解它们是如何被操纵的。 例如,…

【简单实用框架】【十大排序算法直接调用】【可移植】

☀️博客主页:CSDN博客主页💨本文由 萌萌的小木屋 原创,首发于 CSDN💢🔥学习专栏推荐:面试汇总❗️游戏框架专栏推荐:游戏实用框架专栏⛅️点赞 👍 收藏 ⭐留言 📝&#…

周鸿祎连任新一届全国政协委员 新任期将继续聚焦数字安全领域

1月17日,政协第十三届全国委员会常务委员会第二十五次会议通过中国人民政治协商会议第十四届全国委员会委员名单。其中,三六零(601360.SH,下称“360”)集团创始人周鸿祎再次连任全国政协委员。早在2018年,周鸿祎就以九三学社界别的…

linux性能监控命令dstat详解【杭州多测师_王sir】【杭州多测师】

dstat 命令是一个用来替换 vmstat、iostat、netstat、nfsstat 和 ifstat 这些命令的工具,是一个全能系统信息统计工具。与 sysstat 相比,dstat 拥有一个彩色的界面,在手动观察性能状况时,数据比较显眼容易观察;而且 ds…

2018LinuxCon,开源界的大咖们来了,赶紧行动!

​​​全球顶级开源盛会二度落地中国! 很多人都期望有着牛顿的成功之道:我之所以能成功 ,是因为我站在巨人的肩上。 但是,最为困惑的是:巨人在哪里? 参加2018年度的 LinuxCon ContainerCon CloudOpen …

和技术大咖们一起工作是怎样的体验?擎创招人进行时,你~要上车吗?

又是一年招聘季,职场的小伙伴,你是否正在看机会呢? 如果问你最想去哪里工作? 答案估计五花八门,大厂or创业公司? 当leader带人还是跟着大佬前进更快? 去技术驱动型公司上冲锋陷阵的前线还是…

Apache Flink 中文社区视频号上线!和大咖们线上见面~

▼ 关注「ApacheFlink」视频号,遇见更多大咖 ▼ 与时俱进,Flink 中文社区也拥有自己的视频号啦。在这里,你将可以遇见各路大咖,get 他们使用 Flink 的经验;还可以与全国各行各业的技术爱好者们相约评论区,分…

CXO和BATJ大咖们力荐的新书《推荐系统开发实战》出版派福利了!

经历近一年的时间,《推荐系统开发实战》终于在各大电商网站上线了,在这一年中,前半年是集中时间写稿,后半年则是修正,历时艰辛,但结果还是好的,终于等到了他——《推荐系统开发实战》。在此特别…

QCon 2019:云安全大咖们聚在一起都聊了啥?

5月6-8 日,QCon 全球软件开发大会(北京)2019在北京国际会议中心举办,100国内外资深技术大咖带来涉及 26热门领域的重磅议题分享。 大会第二天的“云安全攻与防”专题论坛上,腾讯安全云鼎实验室负责人董志强&#xff0…

2020 以太坊技术及应用大会·中国圆满落幕,大咖们的演讲精华都在这里了!

编辑 | 晋兆雨、Carol 2020年8月8日,【以太坊技术及应用大会中国】圆满结束,CSDN 创始人&董事长、极客邦创投创始人蒋涛、以太坊创始人Vitalik Buterin 、Unitimes、独角时代创始人姜英英、CSDN 副总裁、通证经济发起人孟岩、DeFi Labs创始人代世超、PChain 创始…

大咖们的15条产品方法论,你都知道吗?

在互联网流量红利阶段,中国的互联网行业蓬勃发展。产品经理作为互联网企业的「火车头」,在企业增长过程中承担了中坚位置。 产品经理岗位从形态不清晰,到今天大量的底层思维、方法论沉淀。群星闪烁,也积累了宝贵的行业及岗位财富。…

Cacti监控讲解

Cacti监控讲解 1、Cacti原理的概述 组件构成: 组合框架:LAP数据收集:SNMP 这个是简单的网络管理协议监控的必须使用的协议;SNMP Apache:web页面提供; 动态共享模块功能; 绘制图形&#xff1a…

不会真的有人看不懂 Linux 小白都能看懂的大数据入门(一) 图文

一、概述 1.1 Linux的历史 操作系统,英语Operating System简称为OS。说道操作系统就需要先讲一讲Unix,UNIX操作系统,是一个强大的多用户、多任务操作系统,支持多种处理器架构,按照操作系统的分类,属于分时…

我只是追个直播,结果被拉进大咖们的群面对面群聊……

这一切要从上世纪60年代讲起…… 20世纪60年代,阿帕网(ARPANET)将共享源代码、互相协作和开放通信的底蕴写入软件开发的基因中,为「开源」的概念奠定了基础。 1991 年 9 月 17 日,一位名为 Linus 的小伙子将自己写的新…

​最强全集,数据科学领域,那些你不能不知道的大咖们!

全文共8242字,预计学习时长24分钟 图源:Unsplash 是什么让数据科学成为一个性感的行业?当把海量数据注入到新兴行业中,并随之而涌现的大量令人兴奋的新技术。 如今,数据科学不再是纯抽象领域的代名词,而是随处可见。 从大型产业到学术研究,无不体现出社会对该专业领…

CXO和BATJ大咖们力荐的新书《推荐系统开发实战》发售了!

大家好,我是王老湿。老读者都知道,自从我毕业后,一直在做推荐系统相关的工作,想当初我在入门推荐系统的时候,由于当时并没有发现非常全面又不过时的相关书籍,所以学习的时候都是零零散散地来学习&#xff0…

520来 GitHub Copilot 开发者训练营,与技术大咖们约个会!

(本文阅读时间:2分钟) 官方研究显示,使用 GitHub Copilot 后: 90% 开发者表示可以更快地完成任务; 75% 开发者感到更有成就感; 73% 开发者能保持顺畅并节省精力。 看到这里的你,是不…

大咖们如何评判优秀架构师?

导语 | 成为一名优秀的架构师是很多开发者的梦想,但对很多人来说却欠缺一条可供参考的实现路径。「云社区沙龙online」邀请到腾讯云云服务器副总经理李力、贝壳金服小微企业生态CTO&腾讯云最具价值专家(TVP)史海峰、奈学教育科技创始人&a…

大咖们都在用的工具,你还不快看看?

上面这些师傅们都熟悉哪些?今天来简单介绍一些实用的工具 Nmap Nmap是一个网络扫描和主机检测工具,可以用于识别网络中的主机和服务,以及检查开放的端口、监督管理检修时间表、观察主机或管理的正常运行时间。Nmap被称为“网络管理员和安全审…

周末和技术大咖们聚餐,聊到了软件测试行业的“金九银十”高峰【内卷之势已然形成】

大家好! 周末和技术大佬们聚餐,聊到了测试行业的“金九银十”高峰就业问题,普遍认为转行和大学生入行的越来越多,内卷之势已然形成。 现在不论面试哪个级别的测试工程师,面试官都会问一句 “会编程吗?有没…