参考项目:GitHub - gesanqiu/SNPE_Tutorial: A simple tutorial of SNPE.
git clone https://github.com/gesanqiu/SNPE_Tutoria
下载下来
打开SNPE_Tutorial-main/README.md,里面有安装的环境配置
Ubuntu下的安装:
主要的安装步骤:
更新软件源并安装:
sudo apt-get update
sudo apt-get upgrade
安装build-essential:
sudo apt-get install build-essential
安装gcc :
sudo apt install gcc
安装g++:
sudo apt install g++
安装cmake:
sudo snap install cmake --classic
主要安装的依赖
sudo apt-get install libjson-glib-dev libgflags-dev libjsoncpp-dev libmosquitto-dev mosquitto mosquitto-clients libspdlog-dev libfmt-dev
安装GStreamer1.0
sudo apt-get install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-bad1.0-dev gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-tools gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-gl gstreamer1.0-gtk3 gstreamer1.0-qt5 gstreamer1.0-pulseaudio
安装Opencv:
参考链接:Ubuntu 安装 OpenCV 4.5.5_ubuntu安装opencv4.5-CSDN博客
下载源码:wget https://github.com/opencv/opencv/archive/refs/tags/4.5.5.zip
解压:unzip opencv-4.5.5.zip
编译:
cd opencv-4.5.5
mkdir build && cd build
cmake -D WITH_TBB=ON -D WITH_EIGEN=ON -D OPENCV_GENERATE_PKGCONFIG=ON -D BUILD_DOCS=ON -D BUILD_TESTS=OFF -D BUILD_PERF_TESTS=OFF -D BUILD_EXAMPLES=OFF -D WITH_OPENCL=OFF -D WITH_CUDA=OFF -D BUILD_opencv_gpu=OFF -D BUILD_opencv_gpuarithm=OFF -D BUILD_opencv_gpubgsegm=O -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local/opencv455 ..
make
sudo make install
下载ndk:
wget https://googledownloads.cn/android/repository/android-ndk-r26b-linux.zip
解压:unzip android-ndk-r26b-linux.zip
SNPE_Tutorial-main/CMakeLists.txt的修改:
修改opencv的路径:之前安装的路径
set(OpenCV_DIR "/usr/local/opencv455/lib/cmake/opencv4")
修改SNPE的路径:
安装SNPE参考:SNPN 的安装-CSDN博客
set(SNPE_INCLUDE_DIR /home/test/SNPE/snpe_2_15/include/SNPE)
set(SNPE_LIBRARY_DIR /home/test/SNPE/snpe_2_15/lib/x86_64-linux-clang)
保存
到SNPE_Tutorial-main目录下:
编译:
mkdir build && cd build
cmake ..
make
make 之后会报错缺少libc++.so.1包和libc++abi.so.1包
sudo find / -name libc++.so.1
在ndk中找到这个包:
/home/test/SNPE/android-ndk-r26b/toolchains/llvm/prebuilt/linux-x86_64/lib/libc++.so.1
将这个包复制到/lib/x86_64-linux-gnu/下
sudo cp /home/test/SNPE/android-ndk-r26b/toolchains/llvm/prebuilt/linux-x86_64/lib/libc++.so.1 /lib/x86_64-linux-gnu/
同理 libc++abi.so.1 也一样
sudo find / -name libc++abi.so.1
sudo cp /home/test/SNPE/android-ndk-r26b/toolchains/llvm/prebuilt/linux-x86_64/lib/libc++abi.so.1 /lib/x86_64-linux-gnu/
再重新编译。
有时会报代码没有返回值的错误,到对应的文件添加返回值即可。
只做了图片的测试:
在SNPE_Tutorial-main/build/目录下运行:
./test/test_image/test-image --input ../test/test_image/people.jpg --labels ../model/yolov5s_labels.txt --config_path ../test/test_image/config.json
结果保存在build目录下面。
翻译
搜索
复制