海思3559 yolov5 wk模型部署笔记


安装3559工具链

将3559工具链copy到虚拟机上,并解压得到安装包
在这里插入图片描述
解压:

tar -zxvf aarch64-himix100-linux.tgz

解压后会得到安装包文件夹:

在这里插入图片描述
安装工具链:

sudo ./aarch64-himix100-linux.install
source ./aarch64-himix100-linux.install

执行完毕,默认会在/opt录下生成一个hisi-linux文件夹:
在这里插入图片描述
添加工具链环境变量:

vim ~/.bashrc

添加工具链环境路径:

export PATH=/opt/hisi-linux/x86-arm/aarch64-himix100-linux/bin:$PATH

在这里插入图片描述
使配置生效:

source ~/.bashrc

测试工具链是否正常调用:

aarch64-himix100-linux-gcc -v

在这里插入图片描述
出现上图说明安装3559工具链成功。

编译opencv

安装cmake-gui

sudo apt-get install cmake
sudo apt-get install cmake-qt-gui

打开ubuntu的terminal终端,输入cmake-gui,打开cmake的gui界面
在这里插入图片描述
在这里插入图片描述
选择交叉编译工具
Operation System:arm-himix100-linux
gcc:/opt/hisi-linux/x86-arm/aarch64-himix100-linux/bin/aarch64-himix100-linux-gcc
g++:/opt/hisi-linux/x86-arm/aarch64-himix100-linux/bin/aarch64-himix100-linux-g++
其中:编译器路径需要根据自己ubuntu系统的编译器路径来填写
在这里插入图片描述
修改配置
1.修改CMAKE_INSTALL_PREFIX
库的安装路径,文件夹是自己创建的
在这里插入图片描述
2.添加OPENCV_EXTRA_MODULES_PATH
也就是contrib的modules路径
在这里插入图片描述
3.添加CMAKE_FIND_ROOT_PATH
根据自己的实际路径修改,我这里为:/opt/hisi-linux/x86-arm/aarch64-himix100-linux/bin
在这里插入图片描述
4.勾选BUILD_opencv_world库
这样编译出来的库就一个world.so,而不是一堆库。
在这里插入图片描述
5.源代码修改
在opencv-4.5.0中的
modules/videoio/src/cap_dshow.cpp中的include “cap_dshow.hpp”上一行添加

#define NO_DSHOW_STRSAFE

在这里插入图片描述
6.cmake参数修改
在opencv4.5.0目录下,修改最顶层的CMakeList.txt,在include(cmake/OpenCVMinDepVersions.cmake)后面添加:

SET(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} "-pthread -ldl")  
SET(CMAKE_C_FLAGS ${CMAKE_C_FLAGS} "-pthread -ldl") 

在这里插入图片描述
点击configure
在这里插入图片描述
点击generate
在这里插入图片描述
进入编译输出文件夹build,打开terminal终端,输入make,然后等待完成
在这里插入图片描述

make完成后,终端输入make install,到此opencv的交叉编译就完成了。
在这里插入图片描述

编译项目

下载源码:https://github.com/mahxn0/Hisi3559A_Yolov5
解压,在目录下的CMakeLists.txt中设置opencv路径
在这里插入图片描述

新建一个build_test目录:

cmake .. -DTARGET_SOC=3559
make -j8

在这里插入图片描述
在这里插入图片描述
至此便生成了可执行文件。这里只演示过程,源代码中的模型路径,与视频输入需要自己修改。


总结

本文记录海思3559 yolov5 wk模型部署的具体过程,成功生成了可执行文件,后面就可以在板端进行运行测试。

参考文档:
https://blog.csdn.net/qq_40778196/article/details/130595389
https://blog.csdn.net/u014689277/article/details/121556024
https://github.com/mahxn0/Hisi3559A_Yolov5

如果阅读本文对你有用,欢迎关注点赞留言收藏呀!!!
2024年2月22日17:32:09
在这里插入图片描述

最近更新

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

    2024-02-23 08:26:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-23 08:26:02       100 阅读
  3. 在Django里面运行非项目文件

    2024-02-23 08:26:02       82 阅读
  4. Python语言-面向对象

    2024-02-23 08:26:02       91 阅读

热门阅读

  1. haproxy集成国密ssl功能

    2024-02-23 08:26:02       58 阅读
  2. vivado RAM Inference

    2024-02-23 08:26:02       42 阅读
  3. nifi连接Sql server数据库报错TLS问题

    2024-02-23 08:26:02       55 阅读
  4. C++程序设计学习笔记(二)

    2024-02-23 08:26:02       51 阅读
  5. Go 语言一些常用语法编写和优化指南

    2024-02-23 08:26:02       51 阅读
  6. 力扣(leetcode)第455题分发饼干(Python)

    2024-02-23 08:26:02       50 阅读
  7. 嵌入式系统发展前景?

    2024-02-23 08:26:02       47 阅读
  8. mxonline安装总结

    2024-02-23 08:26:02       55 阅读
  9. Vue3学习——hooks

    2024-02-23 08:26:02       54 阅读