《HiSVP开发指南》洋洋洒洒有258页之多,刚看很容易让人抓不住重点。本文结合自己的理解来对模型转换和仿真部分进行了一下梳理
wk模型生成
AI硬件加速器nnie只支持wk模型文件的加载。而SDK提供了 mapper工具来将caffe1.x 算法model转换成wk格式。该工具有linux和windows两个版本,我们这里只讨论windows版本,个人感觉它安装更方便,更容易使用。
一个重要注意点是,我们自己的算法模型很可能是差异很大的,比如darknet yolo3训练出来的模型格式*.weights, tensforflow训练模型格式*.ckpt等。而mapper工具的输入仅仅是caffe1 model, 所以需要我们自己想办法先把自身模型转换成caffe模型,然后才能mapper工具。这个会在后面的文章进行详细介绍。
windows nnie mapper工具已经集成在ruyistudio软件里面,关于ruyistudio的介绍和使用请见该系列第二篇文章。
双击打开ruyistudio IDE后,右击你想要转换模型所对应cfg文件,然后选择open with 再选择mapper configuration editor,就可以在一个可视化环境下阅读和编辑cfg文件,如下所示。
标红框的部分是生成wk文件必须要配置的。此外,如果想提高准确度等属性,需要对下面那一栏mapper setting进行调整。
最后点击make wk按钮如下图红框所示
windows仿真有两种方式,
第一种是直接在ruyistudio来进行。需要先安装和配置mingw编译器,详见开发指南。 然后import项目如下图所示。
然后点击下面按钮来进行debug或release版本的编译。当然,为了节省仿真时间,可以把main.cpp里面其它模型仿真函数注释掉,只保留你感兴趣模型的仿真,也如下图所示。
编译完成后生成binary如下图红框所示。
最后在工具栏点击按钮,选择Run as -> Local C/C++ Application就可以运行仿真程序。
第二种方式是直接运行vs工程文件,直接用visual studio来编译工程,并调试或运行它。 该项目文件为xx\software\sample_simulator\simulator_sample_vc14.sln。双击它就可以打开该项目来编辑和编译。
就个人而言,我更习惯第二种,毕竟对vs开发环境比较熟悉,调试跟踪起来很方便。 此外,这两种方式在release模式对yolo3模型进行仿真所花时间差不多,大概都需要15分钟左右。
指令级仿真和功能级仿真
仿真有两种运行模式:指令级和功能级。前者仿真时间显然比后者慢很多。 两种切换示意如下:
切换完毕需要把源代码重新编译一遍。注意:在功能 仿真切换到指令仿真后,点击仿真按钮,ruyisudio并不会自动开始重新编译,然后再仿真。所以这时需要先手动来clean and build。
点击仿真按钮后,仿真程序会根据不同模式去load相应的inst或func wk。 这个可以从仿真log看到。
前言《HiSVP开发指南》洋洋洒洒有258页之多,刚看很容易让人抓不住重点。本文结合自己的理解来对模型转换和仿真部分进行了一下梳理wk模型生成AI硬件加速器nnie只支持wk模型文件的加载。而SDK提供了 mapper工具来将caffe1.x 算法model转换成wk格式。该工具有linux和windows两个版本,我们这里只讨论windows版本,个人感觉它安装更方便,更容易使用。...
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的
生成
如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片
生成
一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入
欢迎使用Markdown编辑器
你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想
学习
如何使用Mar
前面的博客系列 已经介绍了如何将caffemodel转换成
wk
文件,如何将jpg文件转成bgr
格式
数据以及如何在
PC
上
仿真
模型
推理等,基于这些基础,本文来结合代码分析如何在板子上推理yolov3
模型
。
SDK提供的
nnie
AI
推理相关的样例代码路径在这里:
sample_
nnie
_m
ai
n.c很简单,主要是提供入口函数m
ai
n, 其所带的参数0/1/2。。。 。。。决定了...
#原则相冲突,请谅解,勿喷
深度
学习
的爆发期已经到了瓶颈了,为啥这样说,因为没有突破性的理论进展,都是靠着网络更深、更广,算力更强大来做相应的功能。至少在我的世界观里面是这样的,虽然这样的认知可能会有局限性,或者说是错误的。
现在深度
学习
的方向已经不是以前的泡沫鼓吹了,而是落地,踏踏实实的把...
前两个是功能性
仿真
,后两个是指令性
仿真
。在功能性或指令性
仿真
内部又分为使用opencv库和不使用opencv库两种类型。它们的最终结果应该是一致的,但功能性验证显然速度要快很多。
由于yolo层后处理都是软件实现的,所以当待
仿真
的算法
模型
(即
wk
文件)改变时,尤其网络size或目标识别种类数等方面不同,下面这些参数需...
目前,
nnie
只支持caffemodel,windows上有两种方法
生成
wk
文件,第一种是cmd里敲命令,第二种是利用
ruyi
studio
。
cmd里敲命令的步骤如下:
第一步、准备好deploy prototxt、caffemodel、图片等;
第二步、写cfg文件,如:
其中,instruction_name指定输出的
wk
文件保存路径和名字。
第三步、cd到
海思
的sample_s...
上篇文章已经对一系列的名词进行了讲解,接下来我们将寻找
NNIE
的软件包,其中,有以下工具链:
①
mapper
(location:tool\
nnie
\linux\
mapper
),这个工具主要是可以将我们训练的
模型
转化成 Hi35xx
芯片
或者
仿真
库可以加载的文件(.
wk
后缀名)
②
仿真
库(location:...
WK
_NNC[1]
WK
_NNC简介
WK
_NNR
模型
(Distance-Weighted k-Nearest-Neighbor Rule)是Sahibsingh A. Dudani于1976年提出的对KNN(详见KNN | BaoWJ’s Blog)的一种改进方法。
该方法的主要思路是对KNN中的距离进行加权。
基础KNN是:直接取距离待预测数据点 α\alphaα 最近的K个点,并预测该数据类别为这K个数据中占比最大的数据的类别。KNN可以看成
WK
__NNC的一个特例,这相当于对K个数据点中,设置权重.
文章目录
海思
YOLOv3
wk
模型
在
nnie
设备上面推理前言1.
nnie
推理代码
本文主要讲述如何运行在
nnie
设备SOC上面来运行YOLOv3
模型
,在开始知道,我们默认读者已经把YOLOv3
模型
转换完成并取得还是
wk
指令
模型
,如果不明白如何获取
wk
指令
模型
,可以参考我的上一篇博文。
Pytorch版本YOLOv3
模型
转Darknet weights
模型
然后转caffemodel再转
wk
模型
在
nnie
上面推理
1.
nnie
推理代码
hi
3559a
/c是一款集成电路
芯片
,广泛应用于视频图像处理领域。其原理图是指该
芯片
的电路连接图,展示了
芯片
内部各个元件之间的连接方式。
hi
3559a
/c原理图主要包括以下几个部分:
1. 处理器:hi
3559a
/c
芯片
内集成了多个处理器核心,如ARM Cortex-A73和ARM Cortex-A53等,用于执行图像处理算法和控制各个硬件模块的工作。
2. 存储器接口:hi
3559a
/c
芯片
支持多种存储器接口,包括DDR4 SDRAM、NAND Flash和eMMC等,在原理图中会显示这些存储器与
芯片
的连接方式。
3. 传感器接口:hi
3559a
/c
芯片
支持多种图像传感器接口,如MIPI、CSI-2等,这些接口连接了外部图像传感器和
芯片
,用于接收外部图像数据并进行处理。
4. 图像处理模块:hi
3559a
/c
芯片
内集成了强大的图像处理模块,支持多种图像处理算法和编码
格式
,如H.265、H.264等,原理图中会显示这些模块之间的连接关系。
5. 显示接口:hi
3559a
/c
芯片
支持多种显示接口,如HDMI、LVDS等,原理图中会显示这些接口与
芯片
的连接方式。
总之,hi
3559a
/c原理图展示了
芯片
内部各个模块之间的连接关系,帮助工程师们理解和设计相关应用电路。同时,也方便生产厂商进行
芯片
的布局和焊接。
### 回答2:
Hi
3559A
/C是一款基于
海思
(HiSilicon)公司的平台所开发的图像处理器解决
方案
。它采用了28nm H
PC
(高性能低功耗)工艺制造,集成了多种高性能处理单元和硬件模块,能够实现强大的图像处理功能。
Hi
3559A
/C原理图是指对该
芯片
的电路连接关系和元件布局进行图形化描述。由于Hi
3559A
/C功能复杂且包含了多个模块,因此原理图是开发和设计人员进行电路测试、调试和验证的重要依据。
Hi
3559A
/C的原理图以层次结构呈现,最高级别为系统级接口和处理器核心,并且逐渐展开到具体的功能模块。例如,图像处理单元、视频编码单元、图像传感器接口、存储控制器等。
原理图中的元件和连接线表示电路中的各个部件,如电阻、电容、晶体管等。通过这些元件的连接与互联,Hi
3559A
/C能够实现不同的信号处理和控制功能。
在Hi
3559A
/C原理图中,也会标注一些重要的电气特性和电源分配,以确保电路稳定和正确的工作。例如,供电电压要求、时钟信号、阻抗匹配等。
通过Hi
3559A
/C原理图,开发和设计人员可以更好地了解
芯片
内部的电路结构和功能模块之间的连接关系,从而进行电路设计、布局和优化。
总之,Hi
3559A
/C原理图是对该
芯片
电路连接关系和元件布局进行图形化描述的重要工具,它为开发和设计人员提供了更好的理解和分析
芯片
内部电路结构的能力,使得他们能够更好地进行电路设计、调试和优化工作。
### 回答3:
Hi
3559A
/C是华为公司推出的一款高性能图像处理
芯片
。它采用了领先的
AI
技术和视频处理技术,能够实现高清图像处理和智能分析。其原理图是
芯片
设计的基础,用于描述
芯片
各部分的电路连接和信号传输。
Hi
3559A
/C的原理图包括了主控
芯片
、外设
芯片
、存储
芯片
等电路元件的连接方式和信号传输路径。主控
芯片
是整个系统的核心,负责处理各种输入和输出信号。外设
芯片
包括摄像头、显示器、传感器等,用于输入和输出图像信号。存储
芯片
则用于存储处理后的图像数据。
在原理图中,各个元件之间通过电路板上的导线、焊盘、插槽等进行连接。不同的信号通过不同的电路路径进行传输,以实现各种功能。
芯片
的固定电源和时钟信号也在原理图中得到了体现。
Hi
3559A
/C的原理图还包括了一些辅助电路,如滤波电路、稳压电路等。这些电路用于稳定输入和输出信号,以提高整个系统的性能和可靠性。
通过仔细分析Hi
3559A
/C的原理图,我们可以更好地了解
芯片
的工作原理和各个部分之间的关系。这对于
芯片
的设计、调试和维护都具有重要意义。同时,原理图也为
芯片
的后期升级和功能扩展提供了便利。
qq_53829348:
c++版的NMS(非极大抑制)实现
JSLab:
双目测距系列(八)monodepth2训练代码分析上
柚子雨39: