OpenVINO 在推理中将网络拓扑结构,最终转换成Grap,以grap file形式发送到movidius中

Grap file 文件格式为:ElfN_Ehdr + mv_blob_header + data形式

其封装代码在BackEnd::serialize中,代码路径inference-engine\src\vpu\graph_transformer\src\backend\serialize.cpp

ElfN_Ehdr

ElfN_Ehdr格式主要为文件信息,其文件采用elf格式:

VPU_PACKED(ElfN_Ehdr {uint8_t  e_ident[EI_NIDENT];uint16_t e_type;uint16_t e_machine;uint32_t e_version;uint32_t e_entry;uint32_t e_phoff;uint32_t e_shoff;uint32_t e_flags;uint16_t e_ehsize;uint16_t e_phentsize;uint16_t e_phnum;uint16_t e_shentsize;uint16_t e_shnum;uint16_t e_shstrndx;
};)

封装代码为:

mv_blob_header

mv_blob_header主要包括了blob中的信息:

VPU_PACKED(mv_blob_header {uint32_t magic_number;uint32_t file_size;uint32_t blob_ver_major;uint32_t blob_ver_minor;uint32_t inputs_count;uint32_t outputs_count;uint32_t stages_count;uint32_t inputs_size;uint32_t outputs_size;uint32_t batch_size;uint32_t bss_mem_size;uint32_t number_of_cmx_slices;uint32_t number_of_shaves;uint32_t has_hw_stage;uint32_t has_shave_stage;uint32_t has_dma_stage;uint32_t input_info_section_offset;uint32_t output_info_section_offset;uint32_t stage_section_offset;uint32_t const_data_section_offset;
};)

封装代码为:

Data数据

后面紧跟数据信息为:

将上述封装好的数据发往Movidius中

OpenVINO InferenceEngine 之Grap file相关推荐

  1. OpenVINO InferenceEngine之读取IR

    目录 CNNNetReader API列表 CNNNetReader构造函数 CNNNetReaderImpl构造函数 xml网络拓扑文件结构 CNNNetReader::ReadNetwork CN ...

  2. OpenVINO InferenceEngine之FormatParser

    目录 FormatParser::Parse 创建CNNetwork类 获取所有Layer节点 解析每层layer数据 获取到Layer id 获取到layer type 获取layer name 获 ...

  3. OpenVINO InferenceEngine之CNNNet、CNNLayer、Blob介绍

    OpenVINO IE模块对整个网络拓扑结构的管理主要是通过Net 和Layer,Data(Blob)进行管理的,看起来和caffe中的Net,Layer,Blob是一样的层次结构,是不是有点惊奇,技 ...

  4. OpenVINO InferenceEngine之Core类

    最近因为项目需要,对intel openVINO的源码进行了解,以便为后面移植开发做准备. OpenVINO的源码在opencv的github主页上可以找到,最新的opencv 4.1.2已经全新支持 ...

  5. OpenVINO InferenceEngine framework

    最近研究OpenVINO中的推理代码,大概总结以下框架,只是自己的理解

  6. VS2019 + OpenVINO 初体验

    文章目录 0. 前言 1. OpenVINO 在 VS2019 中的配置 2. OpenVINO 模型推理程序梗概 0. 前言 目标:在 Windows 上运行 OpenVINO 2021.4 版 实 ...

  7. OpenVINO Inference Engine之LoadNetwork

    在<OpenVINO InferenceEngine之Core类>之中只是简单了介绍了一下loadNetwork的整个流程,还没有涉及到真正的加载动作.如上文中所示,在加载网络之前需要首先 ...

  8. LattePanda 安装ubuntu 20.04 和 openvino

    LattePanda 安装ubuntu 20.04 和 openvino 2020.4 硬件: LattePanda Delta M.2 SSD Intel Neural Computer Stick ...

  9. 学习opengl入门

    当然,这些只是我7天来业余时间的学习,我觉得这个网址不错,大家如果也想学习opengl,并且具有一定的C语言C++基础,入门课程推荐大家去学习这个网址http://www.cnblogs.com/cr ...

最新文章

  1. linux传文件到xp,Linux与Windows XP之间使用FTP互传文件
  2. 利用curl并发来提高页面访问速度
  3. 21天战拖记——Day10:“书柜整理法”再学习(2014-05-13)
  4. https ssl 非对称加密
  5. 3. Nest Provider
  6. Page_Load Page_Init方法使用原理(转)
  7. 《Adobe InDesign CS6中文版经典教程》—第2课2.9节应用对象样式
  8. python 重写断言_历时四年,Dropbox 用 Rust 重写同步引擎核心代码
  9. 二维数组vector的代码使用简单例子_vector容器_ 用构造函数vectorint()
  10. 中国加氢处理催化剂行业市场供需与战略研究报告
  11. NetofficeSystem协同办公系统今日发布
  12. gridview自动编号
  13. 【翻转整数考虑溢出】LeetCode 7. Reverse Integer
  14. red5-server-1.0.6-RELEASE 启动异常
  15. 大端模式和小端模式之“终极记忆”
  16. oppo小布机器人_oppo小布小布没反应
  17. 树莓派上编写串口助手软件
  18. mysql数据库访问记录_MySQL数据库运行、访问记录与日志
  19. 如何将DotNetFX35SP1打进安装包
  20. 【记录】谈计算机知识、技术与能力

热门文章

  1. Excel和Word 简易工具类,JEasyPoi 2.1.5 版本发布
  2. Activiti 工作流会签开发设计思路
  3. Java中super与this
  4. Linux IPC实践(13) --System V IPC综合实践
  5. 经典假设检验理论记录一二
  6. Android Studio 导入 AOSP 源码
  7. Python 3 并发编程多进程之进程同步(锁)
  8. Mysql中Innodb大量插入数据时SQL语句的优化
  9. Android应用程序创建桌面快捷方式
  10. BESR备机恢复主机