Hi3559AV100 NNIE开发(3)RuyiStudio软件 .wk文件生成过程-mobilefacenet.cfg的参数配置
之后随笔将更多笔墨着重于NNIE开发系列,下文是关于Hi3559AV100 NNIE开发(3)RuyiStudio软件 .wk文件生成过程-mobilefacenet.cfg的参数配置,目前项目需要对mobilefacenet网络进行.wk的开发,通过RuyiStudio创建工程(关于软件RuyiStudio的安装与配置看后期是否有时间,有时间就会出一篇随笔供大家参考),在工程下配置mobilefacenet.cfg文件,加载训练好的mobilefacenet.caffemodel与mobilefacenet.prototxt并进行mobilefacenet.wk的生成,其中重要的一环为mobilefacenet.cfg参数的配置,下面随笔将给出具体操作,首先给出整体需要配置的参数表:
1 [prototxt_file]
2 [caffemodel_file]
3 [batch_num]
4 [net_type]
5 [sparse_rate]
6 [compile_mode]
7 [is_simulation]
8 [log_level]
9 [instruction_name]
10 [RGB_order]
11 [data_scale]
12 [internal_stride]
13 [image_list]
14 [image_type]
15 [mean_file]
16 [norm_type]
下面给出一一说明:
(1)prototxt_file
1 layer {
2 name: "conv5 "
3 type: "Convolution"
4 bottom: "conv4"
5 top: "conv5_report"
6 convolution_param {
7 num_output: 256
8 kernel_size: 3
9 pad: 1
10 stride: 1
11 }
12 }
1 layer {
2 name: "conv5_hp"
3 type: "Convolution"
4 bottom: "conv4"
5 top: "conv5"
6 convolution_param {
7 num_output: 256
8 kernel_size: 3
9 pad: 1
10 stride: 1
11 }
12 }
1 layer {
2 bottom: "rpn_cls_score"
3 top: "rpn_cls_score_reshape"
4 name: "rpn_cls_score_reshape_cpu"
5 type: "Reshape"
6 reshape_param {
7 shape {
8 dim: 0
9 dim: 2
10 dim: -1
11 dim: 0
12 }
13 }
14 }
(2)caffemodel_file:
网络模型数据文件。
(3)[batch_num]
(4) [net_type]:
网络的类型。
(5) [sparse_rate] --->(取值0到1,默认0)
NNIE引擎采用了参数压缩技术以减少带宽占用,为了提高压缩率,可通对FC参数进稀疏处理。
用户通过sparse_rate数值指定多少比例的FC参数稀疏为0,例如配0.5,则FC参数有50%将被稀疏为0,由于数据变的稀疏,压缩模块会获得更好的压缩率。稀疏值越高,计算FC时所需参数带宽越低,但精度会有所下降。
(6) [compile_mode]
(7) [is_simulation]
(8) [log_level]
(9) [instruction_name]
(10) [RGB_order] --->取值范围:{RGB,BGR} default:BGR
(11) [data_scale]
(12) [internal_stride]
(13) [image_list]
NNIE mapper 用于数据量化的参考图像 list 文件或feature map 文件。该配置跟 image_type 相关。如果网络的数据输入是灰度或者 RGB 图像输入,即image_type 配置不为 0,image_list 配置为所参考图片的list,内容示意图如下图图示,图片的格式支持以下几种:

(14) [image_type]
表示网络实际执行时输入给网络的数据类型,该配置跟 image list 相关。
0∶表示网络数据输入为 SVP BLOB_TYPE_S32(参考《HiSVP API参考》)或者向量的类型(VEC_S32和 SEQ S32);此时要求 image list 配 置为 feature map 文件;
1∶ 表示网络数据输入为 SVP BLOB TYPE U8(普通的灰度图和 RGB 图)类型; 此时要求 image_list 配置是 RGB 图或者灰度图片的 list 文件;
3∶ 网络数据输入为 SVP_ BLOB_TYPE YUV420SP类型;
5∶ 网络数据输入为SVP_BLOB_TYPE YUV422SP类型;
当配置为3或者5时,image_list配置为 RGB图片的 list 文件。
(15) [mean_file]
(16)[norm_type]
表示对网络数据输入的预处理方法。注意image_type配置为0时,norm_type只能配置为0;image_type配置为3或者5时,网络输入数据为YUV图像,但是NNIE硬件会根据RGB_order配置项自动转为RGB或者BGR图像,此时norm_type配置方法跟image_type为1时一致。
1 [prototxt_file] ./mark_prototxt/mobilefacenet_mark_nnie_20210205133124.prototxt
2 [caffemodel_file] ./data/mobilefacenet.prototxt.caffemodel
3 [batch_num] 256
4 [net_type] 0
5 [sparse_rate] 0
6 [compile_mode] 0
7 [is_simulation] 1
8 [log_level] 3
9 [instruction_name] ./mobileface_func
10 [RGB_order] BGR
11 [data_scale] 0.0078125
12 [internal_stride] 16
13 [image_list] ./data/images/imageList.txt
14 [image_type] 1
15 [mean_file] ./data/pixel_mean.txt
16 [norm_type] 5
后面随笔将给出mobilefacenet网络的NNIE实现具体过程。
Hi3559AV100 NNIE开发(3)RuyiStudio软件 .wk文件生成过程-mobilefacenet.cfg的参数配置的更多相关文章
- Hi3559AV100 NNIE开发(5)mobilefacenet.wk仿真成功量化及与CNN_convert_bin_and_print_featuremap.py输出中间层数据对比过程
前面随笔给出了NNIE开发的基本知识,下面几篇随笔将着重于Mobilefacenet NNIE开发,实现mobilefacenet.wk的chip版本,并在Hi3559AV100上实现mobilefa ...
- Hi3559AV100 NNIE开发(7) Ruyistudio 输出mobileface_func.wk与板载运行mobileface_chip.wk输出中间层数据对比
前面随笔讲了关于NNIE的整个开发流程,并给出了Hi3559AV100 NNIE开发(5)mobilefacenet.wk仿真成功量化及与CNN_convert_bin_and_print_featu ...
- Hi3559AV100 NNIE开发(2)-RFCN(.wk)LoadModel及NNIE Init函数运行过程分析
之后随笔将更多笔墨着重于NNIE开发系列,下文是关于Hi3559AV100 NNIE开发(2)-RFCN(.wk)LoadModel及NNIE Init函数运行过程分析,通过对LoadModel函数及 ...
- Hi3559AV100 NNIE开发(4)mobilefacenet.cfg参数配置挖坑解决与SVP_NNIE_Cnn实现分析
前面随笔给出了NNIE开发的基本知识,下面几篇随笔将着重于Mobilefacenet NNIE开发,实现mobilefacenet.wk的chip版本,并在Hi3559AV100上实现mobilefa ...
- Hi3559AV100 NNIE开发(6)RFCN中NNIE实现关键线程函数->SAMPLE_SVP_NNIE_Rfcn_ViToVo()进行数据流分析
前面随笔给出了NNIE开发的基本知识,下面几篇随笔将着重于Mobilefacenet NNIE开发,实现mobilefacenet.wk的chip版本,并在Hi3559AV100上实现mobilefa ...
- 基于Hi3559AV100的SVP(NNIE)开发整体流程
在之后的hi3559AV100板载开发中,除了走通V4L2->VDEC->VPSS->VO(HDMI)输出,还有需要进行神经网络的开发学习,进行如face detection的开发等 ...
- Hi3559AV100 NNIE RFCN开发:V4L2->VDEC->VPSS->NNIE->VGS->VO系统整体动态调试实现
下面随笔将给出Hi3559AV100 NNIE RFCN开发:V4L2->VDEC->VPSS->NNIE->VGS->VO系统整体动态调试实现,最终的效果是:USB摄像 ...
- Hi3359AV100 NNIE开发(1)-RFCN demo LoadModel函数与参数解析
之后随笔将更多笔墨着重于NNIE开发系列,下文是关于Hi3359AV100 NNIE开发(1)-RFCN demo LoadModel函数与参数解析,通过对LoadModel函数的解析,能够很好理解. ...
- 工具武装的前端开发工程师 Mac 软件清单
Awesome Mac 这个仓库主要是收集非常好用的Mac应用程序.软件以及工具,主要面向开发者和设计师.有这个想法是因为我最近发了一篇较为火爆的涨粉儿微信公众号文章<工具武装的前端开发工程 ...
随机推荐
- 洛谷P2241-统计方形-矩形内计算长方形和正方形的数量
洛谷P2241-统计方形 题目描述: 有一个 \(n \times m\) 方格的棋盘,求其方格包含多少正方形.长方形(不包含正方形). 思路: 所有方形的个数=正方形的个数+长方形的个数.对于任意一 ...
- codeforces 875B
B. Sorting the Coins time limit per test 1 second memory limit per test 512 megabytes input standard ...
- 链接脚本再探和VMA与LMA
链接脚本简单描述 连接脚本的描述都是以节(section)的单位的,网上也有很多描述链接脚本语法的好文章,再不济还有官方的说明文档可以用来学习,其实主要就是对编译构建的整个过程有了深入的理解后就能对链 ...
- μC/OS-III---I笔记8---事件标志
当任务需要同步时可以使用信号量.A任务给B任务发送消息后B任务才能继续运行.如果需要A任务给任务B传递数据的时候就可以采用消息队列.但对于繁杂任务的同步,比如多个时间发生以后执行一个事件,或者是C任务 ...
- 使用 js 实现十大排序算法: 桶排序
使用 js 实现十大排序算法: 桶排序 桶排序 refs xgqfrms 2012-2020 www.cnblogs.com 发布文章使用:只允许注册用户才可以访问!
- 如何在 GitHUb 上使用 gitbook 发布一本在线书籍
如何在 GitHUb 上使用 gitbook 发布一本在线书籍 ebook / pdf refs https://docs.gitbook.com/integrations/github xgqfrm ...
- autocode & API
autocode & API https://autocode.com/app/ https://autocode.com/lib/ api-service https://dashboard ...
- HTML 5.3
HTML 5.3 W3C Working Draft, 18 October 2018 https://www.w3.org/TR/html53/ refs https://www.w3.org/TR ...
- Electron in Action
Electron in Action $ yarn add -D electron@latest # OR $ npm i -D electron@latest https://www.electro ...
- qt 获取窗口句柄的线程id和进程id GetWindowThreadProcessId
int lpdwProcessId; int id = GetWindowThreadProcessId((HWND)0x707d6, (LPDWORD)&lpdwProcessId); qD ...