当前位置: 首页 > news >正文

QNN:基于QNN+example重构之后的yolov8det部署

QNN是高通发布的神经网络推理引擎,是SNPE的升级版,其主要功能是:

完成从Pytorch/TensorFlow/Keras/Onnx等神经网络框架到高通计算平台的模型转换;
完成模型的低比特量化(int8),使其能够运行在高通神经网络芯片上;
提供测试工具(qnn-net-run),可以运行网络并保存输出;
提供测试工具(qnn-profile-viewer),可以进行FLOPS、参数量、每一层运行时间等分析;

Qualcomm® AI Engine Direct 架构采用模块化设计,可实现软件中的清晰分离 对于不同的硬件核心/加速器,例如 CPU、GPU 和 DSP,指定为 后端。了解有关 Qualcomm® 的更多信息AI Engine Direct后端此处。

针对不同硬件核心/加速器的 Qualcomm® AI Engine Direct 后端被编译为 与 SDK 一起打包的各个特定于核心的库。

跨 IP 核的统一 API

Qualcomm® 的主要亮点之一AI Engine Direct 是它提供了统一的 API 来委托操作 例如跨所有硬件加速器后端的图形创建和执行。这允许用户 将 Qualcomm® AI Engine Direct 视为硬件抽象 API,并将应用程序轻松移植到不同的内核。

正确的抽象级别

Qualcomm® AI Engine Direct API 旨在支持高效的执行模型 具有内部处理的图形优化等功能。 但与此同时,它遗漏了更广泛的功能,例如模型解析和 网络分区到更高级别的框架。

组合的灵活性

借助 Qualcomm® AI Engine Direct,用户可以在后端提供的功能之间进行适当的权衡 以及库大小和内存利用率方面的占用空间。这提供了以下能力: 构建 Qualcomm® AI Engine Direct 操作包,仅包含服务一组模型所需的操作 以用例为目标1。有了这个,用户可以创建灵活的应用程序 内存占用低,适合各种硬件产品。

可扩展的运营支持

Qualcomm® AI Engine Direct 还为客户集成自定义操作以无缝协作提供支持 内置操作。

提高执行性能

凭借优化的网络加载和异步执行支持 Qualcomm®AI Engine Direct 可提供高度 机器学习框架和应用程序加载和执行网络图的高效接口 他们想要的硬件加速器。。

我们主要将QNN重新封装一下完成合适与自己的代码结构与逻辑。因为本身的QNN demo看着太复杂了。

重构之后如下图所示:

输出结果:

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • DRF序列化_data传参
  • 一个比 Nginx 还简单的 Web 服务器
  • SoM的理解
  • 头脑风暴中的颜色
  • [M二叉树] lc236. 二叉树的最近公共祖先(dfs+二叉搜索树)
  • IEEE P3233 标准启动会回顾:迈向去中心化存储标准化的第一步
  • 华为云CCE集群创建loadBalancer
  • 如何使用mcu 内置 flash 实现fatfs
  • jQuery基础——DOM
  • 要隐藏滚动条,您可以使用CSS中的overflow属性。
  • 编译可执行命令的FFmpeg
  • 达达熊搭建工程日志(持续更新中)
  • 【Python报错已解决】`ModuleNotFoundError: No module named ‘graphviz‘`
  • java利用JXL操作excel
  • 自然语言处理系列四十八》Word2vec词向量模型》算法原理
  • [分享]iOS开发 - 实现UITableView Plain SectionView和table不停留一起滑动
  • [微信小程序] 使用ES6特性Class后出现编译异常
  • 【刷算法】从上往下打印二叉树
  • Angular2开发踩坑系列-生产环境编译
  • const let
  • electron原来这么简单----打包你的react、VUE桌面应用程序
  • golang 发送GET和POST示例
  • javascript 哈希表
  • js中的正则表达式入门
  • leetcode-27. Remove Element
  • Logstash 参考指南(目录)
  • mac修复ab及siege安装
  • Netty 4.1 源代码学习:线程模型
  • Python socket服务器端、客户端传送信息
  • Python爬虫--- 1.3 BS4库的解析器
  • Redis中的lru算法实现
  • 面试遇到的一些题
  • 使用 Node.js 的 nodemailer 模块发送邮件(支持 QQ、163 等、支持附件)
  • 听说你叫Java(二)–Servlet请求
  • 通过npm或yarn自动生成vue组件
  • 携程小程序初体验
  • 优秀架构师必须掌握的架构思维
  • ​【C语言】长篇详解,字符系列篇3-----strstr,strtok,strerror字符串函数的使用【图文详解​】
  • ​必胜客礼品卡回收多少钱,回收平台哪家好
  • ​直流电和交流电有什么区别为什么这个时候又要变成直流电呢?交流转换到直流(整流器)直流变交流(逆变器)​
  • #LLM入门|Prompt#1.8_聊天机器人_Chatbot
  • (10)工业界推荐系统-小红书推荐场景及内部实践【排序模型的特征】
  • (2)关于RabbitMq 的 Topic Exchange 主题交换机
  • (2015)JS ES6 必知的十个 特性
  • (floyd+补集) poj 3275
  • (js)循环条件满足时终止循环
  • (二)十分简易快速 自己训练样本 opencv级联lbp分类器 车牌识别
  • (附源码)springboot金融新闻信息服务系统 毕业设计651450
  • (附源码)springboot太原学院贫困生申请管理系统 毕业设计 101517
  • (几何:六边形面积)编写程序,提示用户输入六边形的边长,然后显示它的面积。
  • (接口自动化)Python3操作MySQL数据库
  • (十一)手动添加用户和文件的特殊权限
  • (转) ns2/nam与nam实现相关的文件
  • (轉貼) 蒼井そら挑戰筋肉擂台 (Misc)
  • (自用)仿写程序