tengine | tengine-nnie编译

tengine-nnie

Tengine example for run nnie devices。 功能说明: 该工程适用于海思3516CV500,3516DV300,3519AV100 三个硬件平台下用tengine进行NN推理。

目前支持的网络模型有 :FasterrrcnnAlexnet, cnn ,ssd, yolov1, yolov2, yolov3

该库有两个依赖:

1,依赖海思的编译链,如步骤1所示,如果没有安装过需要按照步骤1安装。

2,依赖tengine的版本库 ,按照步骤2下载对应版本

Step 1 : 安装海思的编译器

解压海思资料:arm-himix200-linux.tgz

tar xvf arm-himix200-linux.tgz

cd arm-himix200-linux

chmod +x arm-himix200-linux.install
source ./arm-himix200-linux.install

sudo ./arm-himix200-linux.install

安装完成之后输入arm-himix200-linux- 会提示有哪些编译工具

$ arm-himix200-linux-
arm-himix200-linux-addr2line arm-himix200-linux-g++ arm-himix200-linux-gcov-tool arm-himix200-linux-ranlib
arm-himix200-linux-ar arm-himix200-linux-gcc arm-himix200-linux-gprof arm-himix200-linux-readelf
arm-himix200-linux-as

下载链接:百度网盘 请输入提取码 提取码:tukl

如果执行arm-himix200-linux-gcc 提示文件格式不识别,可能是系统和编译链不兼容,ubuntu18.04的虚拟机和windows的子系统偶然会出现这个问题。

Step 2 : 下载Tengine的对应的版本库

更新地址: http://www.openailab.com/info.php?class_id=102101

Step 3 : 下载安装海思的依赖库

下载链接:百度网盘 请输入提取码 提取码:tukl

unrar x Hi3516CV500R001C02SPC001.rar

cd Hi3516CV500R001C02SPC001/01.software/board

tar xzvf Hi3516CV500_SDK_V2.0.0.2.tgz

bash sdk.unpack

此时会在当前目录生成:smp\a7_linux\mpp ,该目录下有编译需要依赖的库和头文件

说明: 如果您使用的是其他版本的海思依赖库,请自行判断正确的路径,可能和我这一步描述的稍有差异。

Step 4 : 修改编译脚本

主目录下脚本:linux_build.sh 修改如下两个目录 :

TENGINE_SO_PATH 这个路径来自于步骤2下载的目录主路径 :

TENGINE_SO_PATH=/home/qli/Hisi3516CV500/Tengine1.7.1-Hi3516cv500 

NNIE_SDK_DEPENDENCE_PATH 来自于步骤3里面安装的路径

NNIE_SDK_DEPENDENCE_PATH=/home/qli/Hisi3516CV500/Hi3516CV500R001C02SPC001/01.software/board/Hi3516CV500_SDK_V2.0.0.1/package/mpp_smp_linux  

Step5 :编译

# 直接执行 
linux_build.sh

Step6 :执行

请参照Test目录下的脚本实现

其他重点:

1, 如果编译遇到opencv的错误,请参照issue说明。

【报错】opencv依赖错误 undefined reference to 'cv::imread(cv::string const &, int)

【解决方法】

Hi3516CV500R001C02SPC001/01.software/board/Hi3516CV500_SDK_V2.0.0.1/package/mpp_smp_linux/lib 这里面opencv相关的库删掉 ;

Hi3516CV500R001C02SPC001/01.software/board/Hi3516CV500_SDK_V2.0.0.1/package/mpp_smp_linux/include中 opencv 和opencv2这两个文件目录删掉就行

相关推荐

  1. tengine | tengine-nnie编译

    2024-03-26 06:22:02       40 阅读
  2. nng协议nni_posix_resolv_sysinit()系统初始化

    2024-03-26 06:22:02       25 阅读
  3. 编译器 编译原理

    2024-03-26 06:22:02       33 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-26 06:22:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-26 06:22:02       106 阅读
  3. 在Django里面运行非项目文件

    2024-03-26 06:22:02       87 阅读
  4. Python语言-面向对象

    2024-03-26 06:22:02       96 阅读

热门阅读

  1. 全球化战略中的技术纵深

    2024-03-26 06:22:02       41 阅读
  2. 视频中有无声音的检测

    2024-03-26 06:22:02       35 阅读
  3. ios 嵌入vuejs

    2024-03-26 06:22:02       30 阅读
  4. IOS面试题编程机制 61-65

    2024-03-26 06:22:02       37 阅读
  5. 数据分析-Pandas分类数据的get和set

    2024-03-26 06:22:02       35 阅读
  6. Python3批量下载抖音视频

    2024-03-26 06:22:02       41 阅读
  7. Oracle中表按年分区改为按月分区,数据不变

    2024-03-26 06:22:02       39 阅读
  8. 双进程交互实现App自动重启

    2024-03-26 06:22:02       44 阅读
  9. 第四百二十四回

    2024-03-26 06:22:02       46 阅读