最近又开始搞树莓派的深度学习模型。很多windows端的环境需要在树莓派上重新部署,中间出现了非常多的问题。主要以各种库的下载安装为主要。
首先,第一个问题:
树莓派系统烧录之后,默认apt一般需要升级看,而默认下载源一般会升级失败,会提示:
Err:1 http://raspbian.raspberrypi.org/raspbian buster/main 等类似
此时更改apt的下载源可以结局该问题。
1、更改sources.list
打开系统配置文件:
sudo nano /etc/apt/sources.list
删除文件内的原始内容,把下面的粘贴进去:
deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib
CTRL+X,Y,回车后保存退出。
2、更改文件raspi.list
打开系统配置文件:
sudo nano /etc/apt/sources.list.d/raspi.list
删除文件内的原始内容,把下面的粘贴进去:
deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui
CTRL+X,Y,回车后保存退出。
基本上大部分配置都可以直接系统下载啦~
参考:
第二个问题,python指定版本环境的配置,这里以python3.8为例:
1.更新树莓派的系统安装软件,命令如下:
sudo apt-get update
sudo apt-get upgrade
2.安装相关依赖库:
sudo apt-get install -y make build-essential libssl-dev zlib1g-dev
sudo apt-get install -y libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm
sudo apt-get install -y libncurses5-dev libncursesw5-dev xz-utils tk-dev
注意:这一堆依赖安装之后,才可以用一些远程工具进行下载,比如wget或者git等!!
3.下载python
sudo wget https://www.python.org/ftp/python/3.8.17/Python-3.8.17.tgz
4.解压并进入目录
sudo tar -zxvf Python-3.8.17.tgz
cd Python-3.8.17
5.安装python3
sudo ./configure --prefix=/usr/local/python3 && make && make install
*这里可能很多人会碰到权限不够的提示,因此我们切换管理员权限进行安装。
在树莓派的linux系统中,第一次启用root账户并设置密码的命令为:
sudo passwd root
这时系统会提醒输入密码,自行输入即可。
之后,进入管理员账户root权限操作的指令为:
su root
6.创建软链接
sudo ln -s /usr/local/python3/bin/python3 /usr/local/bin/python3
sudo ln -s /usr/local/python3/bin/pip3 /usr/local/bin/pip3
7.查看版本
python3 -V
pip3 -V
参考链接:
树莓派安装python-3.8.5 - 简书 (jianshu.com)https://www.jianshu.com/p/ba55a4ea7047
8.安装opencv-python!!这个真的大坑!!花费了无数时间,卸载重新安装了无数次树莓派系统!!终于成功了!!(numpy也是!等等把反正各种深度学习和机器视觉的包都更新的乱七八糟pip根本install不了一点!!)
一定!不要!用!官方默认的pip或者带镜像的pip -i 去配置opencv-python!!各种报错根本找不到依赖库和解决方案!!直接官网下whl然后pip安装,完事ok!!用pip默认下载一堆错!!还耗时巨长!!
piwheels - opencv-pythonThe piwheels project page for opencv-python: Wrapper package for OpenCV python bindings.https://piwheels.org/project/opencv-python/#install树莓派pip install找不到的whl可以去树莓派单独的whl网站下载:
piwheels - Package Listhttps://www.piwheels.org/packages.html
.whl下载好之后cd到其下载路径,然后用以下指令安装即可(解决大部分报错无解的烦恼!!):
#注意whl对应的版本与自己的树莓派相匹配
#比如树莓派是armv7l架构,python版本3.7,那么下载的whl就是xx_cp37_xx_armv7l.whl
pip install xxx.whl
pps,查看自己树莓派架构的命令:
uname -a
由此查看我们的树莓派版本是arm7l,因此whl需要下载对应的版本。
树莓派比较全的配置安装教程可以查看如下参考:
树莓派安装基于python的opencv_树莓派 python opencv-CSDN博客https://blog.csdn.net/qq_48791657/article/details/124532469
9.关于目标检测模型yolo部署在树莓派上及相关依赖环境的配置。这里重点讲numba这个坑的要死的包!!!真的是搞了好几天查了各种最后终于才解决掉!!
简单来说,就是pip直接安装numba时候,无法直接安装,需要一个llvmlite的依赖!而这个依赖也没法直接pip下载,会提示需要有对应的llvm和相关配置(llvm-config)等!!(这些都是无法直接pip的)
pip3 install numba一般会提示报错,failed to bulid numba,因为少llvmlite之类的
那么我们继续pip3 install llvmlite,但继续报错
比如说报错:
FileNotFoundError: [Errno 2] No such file or directory: 'llvm-config'
...
ERROR: Command errored out with exit status 1:...
或者,
“required to install pyproject.toml-based projects”之类的
那么这里就需要我们先下载llvm这个工具了。
代码如下
#查询官网找到自己安装numba对应的llvm及llvmlite版本
#我这里numba==0.53.0,查询对应llvmlite==0.34.0,对应上表中llvm=9/10
#下载llvm-版本
sudo apt-get install llvm-9
然后指定LLVM_CONFIG路径,先找到llvmlite-9的位置:
ls -l /usr/bin/llvm-config-9
然后根据输出路径指定LLVM_CONFIG安装llvmlite:
LLVM_CONFIG=/usr/lib/llvm-9/bin/llvm-config pip3 install llvmlite==0.34.0
此时会提示llivmlite终于安装成功!!
然后再安装numba==0.53.0
pip3 install numba==0.53.0
终于解决!!走了超级多的弯路!!
十分感谢大佬的参考方案:
Python安装llvmlite、numba报错解决方案-CSDN博客https://blog.csdn.net/qq_41977618/article/details/119572879