【树莓派ncnn部署】

目录

  • 一、Pytorch->ONNX->NCNN->NCNNfp16
  • 二、树莓派ncnn环境配置
    • 2.1、安装git和cmake依赖
    • 2.2、安装其他依赖
    • 2.3、下载ncnn并解压
  • 三、修改相关文件
  • 四、编译ncnn

一、Pytorch->ONNX->NCNN->NCNNfp16

需要先将自己的pythch代码转为ncnnfp16的格式,这步是可以在我们的wins环境下完成的,具体操作步骤看我写的这个博客:【Pytorch->ONNX->NCNN->NCNNfp16->vs编译】.

二、树莓派ncnn环境配置

2.1、安装git和cmake依赖

sudo apt-get install git cmake

2.2、安装其他依赖

sudo apt-get install -y gfortran
sudo apt-get install -y libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
sudo apt-get install --no-install-recommends libboost-all-dev
sudo apt-get install -y libgflags-dev libgoogle-glog-dev liblmdb-dev libatlas-base-dev

2.3、下载ncnn并解压

$ git clone https://github.com/Tencent/ncnn.git 或 git clone git://github.com/Tencent/ncnn.git 或 git clone https://gitee.com/Tencent/ncnn.git
# 更换代码版本 注意这里要看你的.cpp需要什么版本的ncnn 版本不对可能检测框会混乱

三、修改相关文件

需要准备权重文件和cpp文件
【树莓派ncnn部署】_第1张图片
先将cpp文件放在解压后的ncnn_root/examples下并修改ncnn_root/examples/CMakeLists.txt文件:

【树莓派ncnn部署】_第2张图片

再修改ncnn_root/CMakeLists.txt:
【树莓派ncnn部署】_第3张图片

【树莓派ncnn部署】_第4张图片

四、编译ncnn

在工程根目录建议一个build目录,进到build中执行以下指令编译:

cmake -DCMAKE_TOOLCHAIN_FILE=../toolchains/pi3.toolchain.cmake -DPI3=ON ..
make -j4

编译成功:
【树莓派ncnn部署】_第5张图片

在ncnn_root/build/examples生成对应的可执行文件:
【树莓派ncnn部署】_第6张图片

执行可执行文件:

【树莓派ncnn部署】_第7张图片

你可能感兴趣的:(模型部署和模型轻量化(压缩,蒸馏),树莓派部署,yolov5,shufflenet,v5lite-e,ncnn)