树莓派运行YOLOV5项目 安装测试torch & torchvision
项目目录 点击跳转
0. 首页
1. 前期准备工作
2. 配置树莓派系统
3. 安装测试opencv
4. 安装测试torch & torchvision
5. 测试yolov5项目
6. 树莓派运行 yolov5 图形界面
7. 快速配置环境
详细教程
1. 获取 torch 与torchvision 安装包 点击下载
当然,你也可以下载其他版本,但时要注意版本对应,这里是一个大坑,torch 与 torchvision 的版本一定要对照起来,否则会有各种奇奇怪怪的问题。 这里我找到了一个版本对照表 点击查看来源
2. 把安装包传输到树莓派的用户目录下 传输方法可以参照上一篇文章,这里不再赘述
3. 添加两个数据源,否则安装 torch 依赖时会报如下错误 非常煎熬
(1) 添加环境变量
nano ~/.bashrc
在文件末尾添加如下环境变量 更多 点击跳转
export NO_CUDA=1
export NO_DISTRIBUTED=1
export NO_MKLDNN=1
export MAX_JOBS=1 #如果是树莓派4B,这里修改为4
Ctrl + O 然后回车 保存修改
Ctrl + X 退出文件
更新修改
source ~/.bashrc
(2) 添加软件源
sudo nano /etc/apt/sources.list
添加这两行源,不要注释原来的,原来的保持即可,如图所示
deb http://ftp.de.debian.org/debian stretch main
deb http://ftp.cn.debian.org/debian stretch main
Ctrl + O 然后回车 保存修改
Ctrl + X 退出文件
更新一下修改
sudo apt-get -y update
等待更新完成,我也不知道为什么,晚上的时候总是更新报错,白天就好了,如果你也遇到同样的问题可以白天试试
4. 再次安装torch依赖
sudo apt install libopenblas-dev libblas-dev m4 cmake cython
5. 安装 numpy 依赖 不安装或者安装失败也是不会报错的,但是使用的时候不会出结果,如果你的项目没用到 numpy 可以跳过这一步
pip3 install numpy pyyaml cython
有一个警告,问题不大,执行一下如下更新
sudo apt-get update
sudo apt-get upgrade
pip3 install --user cython
6. 安装 torch
pip3 install torch-1.8.1-cp39-cp39-manylinux2014_aarch64.whl
7. 安装 torchvision
pip3 install torchvision-0.9.1-cp39-cp39-manylinux2014_aarch64.whl
# 如果你的torchsino是从博客下载的,注意安装包的名字,末尾多了 (1)
8. 测试一下是否安装成功
python3
import cv2
import torch
import torchvision
报错了,原因是文件名太长导致的,根据上面的报错找到报错的文件
cd .local/lib/python3.9/site-packages/torch/
# cd 路径名 可以进入这个目录
# cd .. 返回上一层目录
# cd ~ 返回用户目录
# cd / 切换到系统根目录
# ls 查看当前路径下的所有文件
如图所示,有两个文件文件名特别长,这是 torch 的一个小 bug ,修改文件名即可,如果你安装的是别的版本的torch,注意修改文件名
sudo cp _C.cpython-39-aarch64-linux-gnu.so _C.so
sudo cp _dl.cpython-39-aarch64-linux-gnu.so _dl.so
# 当文件名很长比较难输入时,可以只输入前几个字符,然后按 Tab 键,可自动填充文件名
修改完成,再次输入 ls 查看文件,可以看到已经复制了文件并修改了文件名
9. 再次测试是否安装成功
python3
import cv2
cv2.__version__
import torch
......
好的,到此环境安装就结束了,你还差最后一步,测试 yolov5 项目。加油
10. 补充 如果你的还是不行,还报如图所示的错误,那么请接着往下看
可能的原因是,不小心安装了两次numpy 导致的,找到如下路径
cd /usr/lib/python3/dist-packages
ls
删除这里面的两个 numpy 文件
sudo sudo rm -rf numpy
sudo rm -rf numpy-1.19.5.egg-info
cd ~
重新安装一遍torch
sudo apt install libopenblas-dev libblas-dev m4 cmake cython
pip3 install numpy pyyaml cython
pip3 install torch-1.8.1-cp39-cp39-manylinux2014_aarch64.whl
然后重启一下树莓派,这回应该可以了。
无论你是否成功,都评论一下告诉我。或者你发现了新的解决办法,也欢迎评论区讨论,谢谢你