【超详细】树莓派4B 安装Paddle |
您所在的位置:网站首页 › 树莓派找不到很多命令 › 【超详细】树莓派4B 安装Paddle |
目录
前言一、完成Linux 本地编译环境的准备1. 下载安装patchelf2. 下载安装cmake
二、源码编译1. 下载Paddle-Lite 源码2. 编译Paddle-Lite 预测库3. 安装Paddle-Lite4. 直接安装whl文件
前言
最近在学习PaddlePaddle,并且需要把训练好的模型部署在树莓派上。 Paddle-Lite简介: Lite是一种轻量级、灵活性强、易于扩展的高性能的深度学习预测框架,它可以支持诸如ARM、OpenCL、NPU等等多种终端。 由于PaddlePaddle是不支持ARM架构CPU的,所以我们在树莓派上只可以安装Paddle-Lite。 同时我们可以从其官网了解到,树莓派安装Paddle-Lite只可以使用本地源码编译的方式。 P.S. 除了下载源码并编译之外,我们也可以直接下载编译好的whl包并安装即可。 paddlelite 2.8.0:paddlelite2.8版本whl文件 也有2.6.0版本的paddlelite.whl包提供下载: https://download.csdn.net/download/weixin_40973138/15929619 安装方式: 将whl文件下载至树莓派,然后执行pip install paddlelite-2.6.0-xxx.whl 即可(详见下文)。 我的整个安装过程所参考的文章: 本地编译ARM Linux(直接在RK3399或树莓派上编译)源码编译 (ARMLinux)树莓派4b学习笔记六:以源码编译的方式安装Paddlelite接下来就开始吧! 一、完成Linux 本地编译环境的准备这部分主要是安装一些基础的软件,用于完成Linux 本地编译环境的准备。 注意:本编译方法暂时只适用于ARM的设备 1. 下载安装patchelf安装patchelf: sudo apt install patchelf然后更新一下目录: sudo apt-get update升级安装: sudo apt-get install -y-y的作用是对后续的操作都选择yes。 gcc g++ make wget python unzip patchelf python-dev 2. 下载安装cmake下载cmake压缩包并解压: wget https://cmake.org/files/v3.20/cmake-3.20.0-rc4.tar.gz tar -zxvf cmake-3.20.0-rc4.tar.gz然后进行一些配置: cd cmake-3.20.0-rc4 ./configure此处若出现Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the system variable OPENSSL_ROOT_DIR (missing: OPENSSL_LIBRARIES OPENSSL_INCLUDE_DIR)这种错误。 可输入(安装OpenSSL的编译依赖):sudo apt-get install libssl-dev 开始编译: make至此,输出结果应该是这样的: 然后安装: sudo make install输出结果: 查看cmake版本以验证安装成功: cmake --version本地编译环境的准备完成。 二、源码编译 1. 下载Paddle-Lite 源码首先下载Paddle-Lite源码: 在此,我选择从Gitee上面下载,因为我这GitHub实在干不动~~ git clone https://gitee.com/paddlepaddle/paddle-lite.git如果你想从GitHub下载,只需要将上述链接替换成https://github.com/PaddlePaddle/Paddle-Lite.git 源码下载完成后将其中的third-party 目录删除,这将使得编译脚本自动从国内CDN下载第三方库文件: cd paddle-lite git checkout release/v2.8 rm -rf third-party注意:在此我选择将默认的4线程编译切换成单线程编译,因为我怀疑4线程编译的多次失败是树莓派的配置较低所导致。 export LITE_BUILD_THREADS=1 2. 编译Paddle-Lite 预测库 ./lite/tools/build_linux.sh --arch=armv7hf --with_python=ON上述指令有多种参数配置,你可以按照你的实际需求进行配置: --arch: (armv8|armv7|armv7hf) arm版本,默认为armv8 --toolchain: (gcc|clang) 编译器类型,默认为gcc --with_extra: (OFF|ON) 是否编译OCR/NLP模型相关kernel&OP,默认为OFF,只编译CV模型相关kernel&OP --with_python: (OFF|ON) 是否编译python预测库, 默认为 OFF --python_version: (2.7|3.5|3.7) 编译whl的Python版本,默认为 None --with_cv: (OFF|ON) 是否编译CV相关预处理库, 默认为 OFF --with_log: (OFF|ON) 是否输出日志信息, 默认为 ON --with_exception: (OFF|ON) 是否在错误发生时抛出异常,默认为 OFFP.S. 一开始我除了--arch 和--with_python 外也有配置其他参数,但失败了很多次后,我就把参数精简到这两个,尽量排除因为其他参数而导致错误的可能。 编译成功: 3. 安装Paddle-Lite首先贴上编译后的文件结构树状图: inference_lite_lib.armlinux.armv8 ├── cxx C++ 预测库和头文件 │ ├── include C++ 头文件 │ │ ├── paddle_api.h │ │ ├── paddle_image_preprocess.h │ │ ├── paddle_lite_factory_helper.h │ │ ├── paddle_place.h │ │ ├── paddle_use_kernels.h │ │ ├── paddle_use_ops.h │ │ └── paddle_use_passes.h │ └── lib C++ 预测库 │ ├── libpaddle_api_light_bundled.a C++ 静态库 │ └── libpaddle_light_api_shared.so C++ 动态库 ├── demo │ └── python Python 预测库demo │ └── python Python 预测库(需要打开with_python选项) ├── install │ └── dist │ └── paddlelite-*.whl Python whl包 └── lib └── lite.so Python 预测库我们的目标文件是paddlelite-*.whl,对其进行安装: 最后验证一下paddlelite 是否可以import: 大功告成。 4. 直接安装whl文件注意:下列仅展示安装2.6版本的paddlelite,文件夹里面有2.8版本的paddlelite,安装方法与下同。 若上述方式始终不能顺利安装,那就直接安装whl文件吧。 首先把whl文件下载至树莓派: 然后执行安装命令:pip install paddlelite-2.6.0-cp37-cp37m-linux_armv7l.whl 通过pip list可以查看paddlelite的安装版本: 安装成功! |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |