文章目錄
- 安裝3559工具鏈
- 編譯opencv
- 編譯項目
- 總結
安裝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