未验证 提交 ea494b82 编写于 作者: T teng 提交者: GitHub

Fix some software md rendering errors (#1078)

* Fix some software rendering errors
Co-authored-by: Ncmdbug <cmdbug@users.noreply.github.com>
上级 a2dd78b5
......@@ -49,9 +49,9 @@ Tengine 核心代码由 4 个模块组成:
### 转换工具
- [预编译版本](https://github.com/OAID/Tengine/releases/download/lite-v1.2/convert_tool.zip):提供 Ubuntu 18.04 系统上预编译好的模型转换工具;
- [在线转换版本](https://convertmodel.com/#outputFormat=tengine):基于 WebAssembly 实现(浏览器本地转换,模型不会上传);
- [源码编译](https://github.com/OAID/Tengine-Convert-Tools):参考 **Tengine-Convert-Tools** 项目编译生成,建议采用。
- [预编译版本](https://github.com/OAID/Tengine/releases/download/lite-v1.2/convert_tool.zip) :提供 Ubuntu 18.04 系统上预编译好的模型转换工具;
- [在线转换版本](https://convertmodel.com/#outputFormat=tengine) :基于 WebAssembly 实现(浏览器本地转换,模型不会上传);
- [源码编译](https://github.com/OAID/Tengine-Convert-Tools) :参考 **Tengine-Convert-Tools** 项目编译生成,建议采用。
### 量化工具
......
......@@ -4,7 +4,7 @@
​ 案例基于开源AI推理框架Tengine 实现容器调用边缘硬件NPU资源,完成高效物体检测的推理任务,并通过开源边缘容器方案 SuperEdge 轻松将应用调度到边缘计算节点,实现一条指令部署边缘计算跨平台AI应用案例。
[Tengine](https://github.com/OAID/Tengine "Tengine")[OPEN AI LAB](http://www.openailab.com/)主导开发,该项目实现了深度学习神经网络模型在嵌入式设备上的**快速****高效**部署需求。为实现在众多**AIoT**应用中的跨平台部署,本项目使用**C语言**进行核心模块开发,针对嵌入式设备资源有限的特点进行了深度框架裁剪。同时采用了完全分离的前后端设计,有利于 CPU、GPU、NPU 等异构计算单元的快速移植和部署,降低评估、迁移成本。
[Tengine](https://github.com/OAID/Tengine "Tengine")[OPEN AI LAB](http://www.openailab.com/) 主导开发,该项目实现了深度学习神经网络模型在嵌入式设备上的**快速****高效**部署需求。为实现在众多**AIoT**应用中的跨平台部署,本项目使用**C语言**进行核心模块开发,针对嵌入式设备资源有限的特点进行了深度框架裁剪。同时采用了完全分离的前后端设计,有利于 CPU、GPU、NPU 等异构计算单元的快速移植和部署,降低评估、迁移成本。
[SuperEdge](https://github.com/superedge/superedge "SuperEdge") 是基于原生 Kubernetes 的**边缘容器**管理系统。该系统把云原生能力扩展到**边缘侧**,很好的实现了云端对边缘端的**管理**和控制,极大**简化**了应用从云端部署到边缘端的过程。SuperEdge 为应用实现**边缘原生化**提供了**强有力**的支持。
......
......@@ -177,7 +177,7 @@ make install
### 5.1 安装 DevEco Studio 和 OHOS NDK
下载安装 DevEco Studio,[传送门](https://developer.harmonyos.com/cn/develop/deveco-studio#download)。若没有华为开发者账号,需到[HarmonysOS应用开发门户](https://developer.harmonyos.com/cn/home)注册。
下载安装 DevEco Studio,[传送门](https://developer.harmonyos.com/cn/develop/deveco-studio#download) 。若没有华为开发者账号,需到[HarmonysOS应用开发门户](https://developer.harmonyos.com/cn/home) 注册。
打开 DevEco Studio,Configure(或File)-> Settings -> Appearance & Behavior -> System Settings -> HarmonyOS SDK,勾选并下载 Native,完成 OHOS NDK 下载。
......
......@@ -2,7 +2,7 @@
## 1. 简介
opendla是基于英伟达开源的加速器NVDLA,之所以后端的名称叫opendla是因为英伟达官方的仓库已经停止维护两年了,而显然NVDLA还有许多可以改进的空间,改进之后的加速器需要和原来的NVDLA作区分,索性就直接叫opendla了,暂时在[ZYNQ-NVDLA](https://github.com/LeiWang1999/ZYNQ-NVDLA)这个仓库维护。
opendla是基于英伟达开源的加速器NVDLA,之所以后端的名称叫opendla是因为英伟达官方的仓库已经停止维护两年了,而显然NVDLA还有许多可以改进的空间,改进之后的加速器需要和原来的NVDLA作区分,索性就直接叫opendla了,暂时在 [ZYNQ-NVDLA](https://github.com/LeiWang1999/ZYNQ-NVDLA) 这个仓库维护。
现在的后端,只对接了 NVDLA 的 small 配置,有如下特点:
......@@ -16,7 +16,7 @@ opendla是基于英伟达开源的加速器NVDLA,之所以后端的名称叫op
## 2. 如何编译
### 2.1 依赖项
依赖项有三部分:
> 第一部分是 芯片对应的 opendla.ko 程序,在[这篇文章](https://zhuanlan.zhihu.com/p/378202360)里有介绍如何编译,目前[仓库](https://github.com/LeiWang1999/ZYNQ-NVDLA)里放置的版本是针对Linux 4.13内核的,如果是别的内核版本需要更改一些函数;
> 第一部分是 芯片对应的 opendla.ko 程序,在 [这篇文章](https://zhuanlan.zhihu.com/p/378202360) 里有介绍如何编译,目前 [仓库](https://github.com/LeiWang1999/ZYNQ-NVDLA) 里放置的版本是针对Linux 4.13内核的,如果是别的内核版本需要更改一些函数;
> 第二部分是 NVDLA 的依赖库,包括libjpeg与libprotobuf,如果是aarch64架构可以直接使用预编译好的文件。
> 第三部分是 NVDLA 原来支持的 Compiler 和 Runtime,需要编译出链接库放到lib目录下,如果是aarch64架构可以直接使用预编译好的文件。
......@@ -26,7 +26,7 @@ opendla是基于英伟达开源的加速器NVDLA,之所以后端的名称叫op
为了编译Tengine的opendla后端支持代码,首先需要编译 libcompiler.so 与 libruntime.so,而 libcompiler 依赖 libprotobuf (版本为2.6.1),libruntime 依赖 libjpeg (版本为libjpeg6b)。
### 2.3 拉取代码
首先,**这里演示的整个编译的过程都在开发板卡上运行**,否则需要交叉编译;例子都是以root的身份来运行的;如何使用开发板连网可以参考[这篇文章](https://zhuanlan.zhihu.com/p/378814739)
首先,**这里演示的整个编译的过程都在开发板卡上运行**,否则需要交叉编译;例子都是以root的身份来运行的;如何使用开发板连网可以参考 [这篇文章](https://zhuanlan.zhihu.com/p/378814739)
#### 2.3.1 拉取 ZYNQ-NVDLA
......@@ -44,7 +44,7 @@ Tengine-Lite 目前只支持一种 opendla 的集成编译方法,即编译open
其他的方案,例如在Tengine编译的过程中连同opendla的编译器和运行时的源代码一起编译,由于代码肯定是要重构的,所以现在还不支持。
这里不将内核驱动程序`opendla.ko`是如何编译的,如何在Petalinux里编译看这篇[文章](https://zhuanlan.zhihu.com/p/378202360)
这里不将内核驱动程序`opendla.ko`是如何编译的,如何在Petalinux里编译看这篇 [文章](https://zhuanlan.zhihu.com/p/378202360)
如果是 aarch64 的架构,可以直接使用 [prebuilt](https://github.com/LeiWang1999/ZYNQ-NVDLA/tree/master/prebuilt/lib/aarch64-ubuntu) 的lib。
......
......@@ -6,7 +6,7 @@
## Prepare Android Toolchain Files
(optional) delete debug compilation parameters to reduce the binary volume [android-ndk issue](https://github.com/android-ndk/ndk/issues/243),The file android.toolchain.cmake can be found from $ANDROID_NDK/build/cmake:
(optional) delete debug compilation parameters to reduce the binary volume [android-ndk issue](https://github.com/android-ndk/ndk/issues/243) ,The file android.toolchain.cmake can be found from $ANDROID_NDK/build/cmake:
```cmake
# vi $ANDROID_NDK/build/cmake/android.toolchain.cmake
......
......@@ -4,7 +4,7 @@
[TIM-VX](https://github.com/VeriSilicon/TIM-VX.git) is a software integration module provided by VeriSilicon to facilitate deployment of Neural-Networks on OpenVX enabled ML accelerators.
Tengine Lite has supported to integrate with TIM-VX Library of Verisilicon to inference CNN by [Khadas VIM3](https://www.khadas.cn/product-page/vim3)(Amlogic A311D).
Tengine Lite has supported to integrate with TIM-VX Library of Verisilicon to inference CNN by [Khadas VIM3](https://www.khadas.cn/product-page/vim3) (Amlogic A311D).
## 2. How to Build
......@@ -117,4 +117,4 @@ $ cd <tengine-lite-root-dir>
$ mkdir build && cd build
$ cmake -DTENGINE_ENABLE_TIM_VX=ON ..
$ make -j4
```
\ No newline at end of file
```
......@@ -19,7 +19,7 @@ To support the deployment of int8 model on AIoT devices, we provide some general
## Download
At present, we provide precompiled executable files, which can be obtained from here [quant_tool_int8](https://github.com/OAID/Tengine/releases/download/lite-v1.3/quant_tool_int8)
At present, we provide precompiled executable files, which can be obtained from here [quant_tool_int8](https://github.com/OAID/Tengine/releases/download/lite-v1.3/quant_tool_int8)
## Install Dependent Libraries
......
......@@ -32,7 +32,7 @@ tengine_lite_lib.cxx.armv8 Tengine 预测库
## 3. 准备预测部署模型
(1) 模型下载:下载mobilenet_v1(<font size=4 color=orange>待补充</font>)模型后解压,可得到.tmfile后缀的模型文件。可通过模型可视化工具[Netron](https://lutzroeder.github.io/netron/)打开文件夹下的model文件,查看模型结构。
(1) 模型下载:下载mobilenet_v1(<font size=4 color=orange>待补充</font>)模型后解压,可得到.tmfile后缀的模型文件。可通过模型可视化工具 [Netron](https://lutzroeder.github.io/netron/) 打开文件夹下的model文件,查看模型结构。
## 4. 编译预测示例程序
......@@ -57,4 +57,4 @@ ALL TEST DONE
```
可以看出,我们已经成功的分类出测试图片是虎猫了。
到这里最基本的上手指北已经完成,剩下的小伙伴们可以自行探索,我们也会不定期更新各种教程范例给大家~
\ No newline at end of file
到这里最基本的上手指北已经完成,剩下的小伙伴们可以自行探索,我们也会不定期更新各种教程范例给大家~
......@@ -6,7 +6,7 @@
## 准备 android toolchain 文件
(可选) 删除debug编译参数,缩小二进制体积 [android-ndk issue](https://github.com/android-ndk/ndk/issues/243),android.toolchain.cmake 这个文件可以从 $ANDROID_NDK/build/cmake 找到:
(可选) 删除debug编译参数,缩小二进制体积 [android-ndk issue](https://github.com/android-ndk/ndk/issues/243) ,android.toolchain.cmake 这个文件可以从 $ANDROID_NDK/build/cmake 找到:
```cmake
# 用编辑器打开 $ANDROID_NDK/build/cmake/android.toolchain.cmake
......
......@@ -4,13 +4,13 @@
[TIM-VX](https://github.com/VeriSilicon/TIM-VX.git) 的全称是 Tensor Interface Module for OpenVX,是 VeriSilicon 提供的用于在支持 OpenVX 的其自研 ML 加速器 IP 上实现深度学习神经网络模型部署。它可以做为 Android NN、TensorFlow-Lite、MLIR、TVM、Tengine 等 Runtime Inference Framework 的 Backend 模块。
Tengine 基于 [Khadas VIM3](https://www.khadas.cn/product-page/vim3)(Amlogic A311D)单板计算机,完成了 TIM-VX 的集成,充分发挥出其内置 NPU **高性能**和 Tengine 异构计算自动切图的**易用性**
Tengine 基于 [Khadas VIM3](https://www.khadas.cn/product-page/vim3) (Amlogic A311D)单板计算机,完成了 TIM-VX 的集成,充分发挥出其内置 NPU **高性能**和 Tengine 异构计算自动切图的**易用性**
目前支持的芯片平台有:
- [Amlogic](https://www.amlogic.com)[A311D](https://www.amlogic.com/#Products/393/index.html)/[S905D3](https://www.amlogic.com/#Products/392/index.html)[C305X](https://www.amlogic.com/#Products/412/index.html)/[C308X](https://www.amlogic.com/#Products/409/index.html)
- [Rockchip](https://www.rock-chips.com)[RV1109](https://www.rock-chips.com/a/cn/product/RV11xilie/2020/0427/1073.html)/[RV1126](https://www.rock-chips.com/a/cn/product/RV11xilie/2020/0427/1075.html)
- [NXP](https://www.nxp.com/)[i.MX 8M Plus](https://www.nxp.com/products/processors-and-microcontrollers/arm-processors/i-mx-applications-processors/i-mx-8-processors/i-mx-8m-plus-arm-cortex-a53-machine-learning-vision-multimedia-and-industrial-iot:IMX8MPLUS)
- [瓴盛科技(JLQ)](https://www.jlq.com)[JA308](https://www.jlq.com/images/products/ja310/ja308.pdf)/[JA310](https://www.jlq.com/images/products/ja310/ja310.pdf)/[JA312](https://www.jlq.com/images/products/ja310/ja312.pdf);
- [Amlogic](https://www.amlogic.com)[A311D](https://www.amlogic.com/#Products/393/index.html) / [S905D3](https://www.amlogic.com/#Products/392/index.html)[C305X](https://www.amlogic.com/#Products/412/index.html) / [C308X](https://www.amlogic.com/#Products/409/index.html)
- [Rockchip](https://www.rock-chips.com)[RV1109](https://www.rock-chips.com/a/cn/product/RV11xilie/2020/0427/1073.html) / [RV1126](https://www.rock-chips.com/a/cn/product/RV11xilie/2020/0427/1075.html)
- [NXP](https://www.nxp.com/)[i.MX 8M Plus](https://www.nxp.com/products/processors-and-microcontrollers/arm-processors/i-mx-applications-processors/i-mx-8-processors/i-mx-8m-plus-arm-cortex-a53-machine-learning-vision-multimedia-and-industrial-iot:IMX8MPLUS)
- [瓴盛科技(JLQ)](https://www.jlq.com)[JA308](https://www.jlq.com/images/products/ja310/ja308.pdf) / [JA310](https://www.jlq.com/images/products/ja310/ja310.pdf) / [JA312](https://www.jlq.com/images/products/ja310/ja312.pdf) ;
## 准备工作
......@@ -342,4 +342,4 @@ vi /vendor/etc/public.libraries.txt # 编辑许可文件
* 不同版本的 TIM-VX 和 Tengine 对 OP 支持的情况有一定区别,请尽可能拉取最新代码进行测试评估。
* 如果已有 OP 没有满足您的应用需求,可以分别在 TIM-VX 和 Tengine 的 issue 里创建一个新的 issue 要求支持;紧急或商业需求可以加入 QQ 群联系管理员申请商业支持。
* Tengine 和 OPEN AI LAB 对文档涉及的板卡和芯片不做单独的保证,诸如芯片或板卡工作温度、系统定制、配置细节、价格等请与各自芯片或板卡供应商协商。
* 如果贵司有板卡想要合作,可以加入 OPEN AI LAB 的 QQ 群联系管理员进一步沟通。
\ No newline at end of file
* 如果贵司有板卡想要合作,可以加入 OPEN AI LAB 的 QQ 群联系管理员进一步沟通。
......@@ -27,7 +27,7 @@ mkdir build && cd build
cmake ..
make -j`nproc` && make install
```
编译完成后,生成的可行性文件 `tm_convert_tool` 存放在 `./build/install/bin/` 目录下。
编译完成后,生成的可执行文件 `tm_convert_tool` 存放在 `./build/install/bin/` 目录下。
## 执行模型转换
......
......@@ -19,7 +19,7 @@
## 下载
当前我们提供预编译好的可执行文件, 您可以从这里获取 [quant_tool_int8](https://github.com/OAID/Tengine/releases/download/lite-v1.3/quant_tool_int8)
当前我们提供预编译好的可执行文件, 您可以从这里获取 [quant_tool_int8](https://github.com/OAID/Tengine/releases/download/lite-v1.3/quant_tool_int8)
## 安装依赖库
......
......@@ -10,7 +10,7 @@
### 支持算子
请参考 [Tengine Support Operators List ](https://github.com/OAID/Tengine/wiki/Tengine-Support-Operators-List)
请参考 [Tengine Support Operators List ](https://github.com/OAID/Tengine/wiki/Tengine-Support-Operators-List)
## 如何获取模型中间结果?
......
......@@ -3,12 +3,12 @@
## 1. 简介
[TIM-VX](https://github.com/VeriSilicon/TIM-VX)[VeriSilicon](https://www.verisilicon.com)[OpenVX](https://www.khronos.org/openvx/) 张量接口模块(Tensor Interface Module for OpenVX,可以视作 OpenVX 的扩展支持)。
[Tengine Lite](https://github.com/OAID/Tengine) 已经完成 TIM-VX 的支持和集成, 在典型的 [VeriSilicon Vivante NPU](https://www.verisilicon.com/en/IPPortfolio/VivanteNPUIP) 硬件设备上,比如 [Khadas VIM3](https://www.khadas.com/vim3)(Amlogic A311D)、[Khadas VIM3L](https://www.khadas.com/vim3l) 上已经可以完成 Tengine 模型的推理。
[Tengine Lite](https://github.com/OAID/Tengine) 已经完成 TIM-VX 的支持和集成, 在典型的 [VeriSilicon Vivante NPU](https://www.verisilicon.com/en/IPPortfolio/VivanteNPUIP) 硬件设备上,比如 [Khadas VIM3](https://www.khadas.com/vim3) (Amlogic A311D)、[Khadas VIM3L](https://www.khadas.com/vim3l) 上已经可以完成 Tengine 模型的推理。
目前支持的芯片平台有:
- [Amlogic](https://www.amlogic.com)[A311D](https://www.amlogic.com/#Products/393/index.html)/[S905D3](https://www.amlogic.com/#Products/392/index.html)[C305X](https://www.amlogic.com/#Products/412/index.html)/[C308X](https://www.amlogic.com/#Products/409/index.html)
- [Rockchip](https://www.rock-chips.com)[RV1109](https://www.rock-chips.com/a/cn/product/RV11xilie/2020/0427/1073.html)/[RV1126](https://www.rock-chips.com/a/cn/product/RV11xilie/2020/0427/1075.html)
- [NXP](https://www.nxp.com/)[i.MX 8M Plus](https://www.nxp.com/products/processors-and-microcontrollers/arm-processors/i-mx-applications-processors/i-mx-8-processors/i-mx-8m-plus-arm-cortex-a53-machine-learning-vision-multimedia-and-industrial-iot:IMX8MPLUS)
- [瓴盛科技(JLQ)](https://www.jlq.com)[JA308](https://www.jlq.com/images/products/ja310/ja308.pdf)/[JA310](https://www.jlq.com/images/products/ja310/ja310.pdf)/[JA312](https://www.jlq.com/images/products/ja310/ja312.pdf);
- [Amlogic](https://www.amlogic.com)[A311D](https://www.amlogic.com/#Products/393/index.html) / [S905D3](https://www.amlogic.com/#Products/392/index.html)[C305X](https://www.amlogic.com/#Products/412/index.html) / [C308X](https://www.amlogic.com/#Products/409/index.html)
- [Rockchip](https://www.rock-chips.com)[RV1109](https://www.rock-chips.com/a/cn/product/RV11xilie/2020/0427/1073.html) / [RV1126](https://www.rock-chips.com/a/cn/product/RV11xilie/2020/0427/1075.html)
- [NXP](https://www.nxp.com/)[i.MX 8M Plus](https://www.nxp.com/products/processors-and-microcontrollers/arm-processors/i-mx-applications-processors/i-mx-8-processors/i-mx-8m-plus-arm-cortex-a53-machine-learning-vision-multimedia-and-industrial-iot:IMX8MPLUS)
- [瓴盛科技(JLQ)](https://www.jlq.com)[JA308](https://www.jlq.com/images/products/ja310/ja308.pdf) / [JA310](https://www.jlq.com/images/products/ja310/ja310.pdf) / [JA312](https://www.jlq.com/images/products/ja310/ja312.pdf) ;
## 2. 如何编译
### 2.1 依赖项
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册