【树莓派4B深度学习 垃圾分类】Chap.1 给树莓派配置keras+tensorflow


1.配置好ssh和vnc之后,换源:
2.python虚拟环境配置
3.安装tensorflow1.14.0
4.安装keras
5.开始测试;import keras前面加import os就能忽略提示。
系统环境:2020-08-20-raspios-buster-armhf-full
工程要求:Tensorflow 1.14.0 + Keras 2.2.4 + Python 3.7
讲解视频:https://www.bilibili.com/video/BV1ab4y117jV?spm_id_from=333.999.0.0

1.配置好ssh和vnc之后,换源:
第一步,先备份源文件

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo cp /etc/apt/sources.list.d/raspi.list /etc/apt/sources.list.d/raspi.list.bak

第二步,编辑系统源文件

sudo nano /etc/apt/sources.list

第三步,将初始的源使用#注释掉,添加如下两行清华的镜像源。Ctrl+O ++ Ctrl+X
【注意】这里的树莓派系统是Raspbian-buster系统,在写系统源链接时要注意是buster,网上很多教程都是之前stretch版本,容易出错!

deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main contrib non-free rpi
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main contrib non-free rpi

第四步,保存执行如下命令 sudo apt-get update,完成源的更新软件包索引。

sudo apt-get update&&upgrade

第五步,还需要更改系统源

sudo nano /etc/apt/sources.list.d/raspi.list

用#注释掉原文件内容,用以下内容取代:用#注释掉原文件内容,用以下内容取代:

deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui

第六步,配置换源脚本,更改pip源
新建文件夹:

mkdir ~/.pip
sudo nano ~/.pip/pip.conf

在pip.conf文件中输入以下内容:

timeout=100
index-url=https://pypi.tuna.tsinghua.edu.cn/simple/
extra-index-url= http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=
        pypi.tuna.tsinghua.edu.cn
        mirrors.aliyun.com

2.python虚拟环境配置
首先进行系统软件包更新

sudo apt-get update 
sudo apt-get upgrade
sudo rpi-update

然后更新自带的pip,由于Raspbian自带的pip3为9.0.1版本,较为老旧,我们使用以下命令来更新pip3:

sudo pip install --upgrade pip  

尝试在更新完pip3后,键入命令:

sudo pip3 list

新建个文件夹(虚拟环境用)

cd Desktop
mkdir tf_pi
cd tf_pi

安装虚拟环境这个好东西

sudo pip install virtualenv

增加环境变量,使得该好东西可以用起来

sudo chmod -R 777 /root/.bashrc
sudo nano ~/.bashrc

export PATH=/home/pi/.local/bin/:$PATH  

放到最后,添加环境变量

source ~/.bashrc

成功了之后:整一个虚拟环境

virtualenv env
source env/bin/activate


3.安装tensorflow1.14.0
用电脑下载:(链接)python3.7版本只能安装1.14.0-Buster版本的TensorFlow
link

最后一个文件用U盘将这个文件拷到树莓派上,建一个bag文件夹存放

U盘使用

/home
安装依赖包:

sudo apt install libatlas-base-dev

安装一些环境

sudo apt-get install -y libhdf5-dev libc-ares-dev libeigen3-dev
python3 -m pip install keras_applications==1.0.8 --no-deps
python3 -m pip install keras_preprocessing==1.1.0 --no-deps
python3 -m pip install h5py==2.9.0
sudo apt-get install -y openmpi-bin libopenmpi-dev
sudo apt-get install -y libatlas-base-dev
python3 -m pip install -U six wheel mock

安装tensorflow

cd env
cd bag
sudo pip3 install --upgrade tensorflow-1.14.0-cp37-none-linux_armv7l.whl
/Desktop/tf_pi/env/bag 

这里要安装二十分钟。。。出错了再来一遍就好了。。
测试是否成功并查看版本:

python
import tensorflow as tf
tf.__version__

4.安装keras
安装一些依赖

sudo apt-get install libhdf5-serial-dev
pip3 install h5py
sudo apt-get install gfortran
sudo apt install libopenblas-dev
pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple/ pillow
sudo pip3 install pybind11

第一个下载numpy:第一次的时候发现安装成功但调用失败了,我觉得是numpy版本过高导致出错了
下载keras还是tensorflow的时候会自动下载numpy(之前已存在,它会先卸载再安装高版本的numpy,之前不存在,它会直接安装高版本的numpy),所以要先下载keras,再卸载numpy,然后再安装低版本的numpy
看一下子numpy版本,太高了

重新安装

pip3 uninstall numpy
pip3 install numpy==1.16.0

第二个下载scipy【直接pip安装百分之九十九的可能都会失败。所以先下载再安装。。。先下载这个链接复制到树莓派上,然后解压到指定文件夹/home/pi/Desktop/tf_pi/env/lib/python3.7/site-packages下】
link

cd /home/pi/Desktop/tf_pi/env/bag
tar -zxvf scipy-1.5.4.tar.gz -C /home/pi/Desktop/tf_pi/env/lib/python3.7/site-packages

然后进到这个文件夹里开启安装:【花里胡哨的各种代码配置呀啥的,会安装三十分钟左右】

cd /home/pi/Desktop/tf_pi/env/lib/python3.7/site-packages/scipy-1.5.4
python setup.py install

pip3 list看一看:【太六了,终于成功了】

再使用这个命令安装keras:

pip3 install keras\=\=2.2.4

请注意;由于在virtualenv里面,一定一定要避免sudo pip3 install,否则会安装到默认路径下!发现keras安装到 _默认 环境了,所以调用不成功,pip list没有

解决办法重新安装

<font color=red>pip3 install keras\=\=2.2.4</font>

安装好了之后记得reboot重启一下子。

推荐使用GPTCAT官网(方便写论文,帮助写或注释代码)

https://gptcat.top/login?invite_code=a5f7deac

比赛需要故只开源了粗劣的第一个版本demo实现,第二版本改进使用yoloV3模型进行垃圾分类检测,机器臂分拣垃圾,垃圾分类数据集重新收集,并有微信小程序的用户查询垃圾分类及反馈机制 注意看ReadMe文件,注意看ReadMe文件,注意看ReadMe文件 B站视频介绍地址:https://www.bilibili.com/video/av80830870 交流群:1074171553 题主双非师范院校2021考研狗,如果你觉得这个小项目有帮助到你,请为项目点一个star,不管是考试型选手毕设项目被迫营业还是直接拿去二开参加比赛,这些都没问题,开源项目就是人人为我我为人人,但请尊重他人劳动成果,大家都是同龄人.心上无垢,林间有风. 材料清单 树莓派 1个 pca9685 16路舵机驱动板 1个 7寸可触摸显示屏一个 MG996R 舵机4个 垃圾桶4个 usb免驱动摄像头1个 树莓派GPIO扩展板转接线柱1个 硅胶航模导线若干 环境需求 1.开发环境 神经网络搭建—python 依赖 tensorflow,keras 训练图片来源华为云2019垃圾分类大赛提供 训练图片地址:https://developer.huaweicloud.com/hero/forum.php?mod=viewthread&tid=24106 下载图片文件后将文件解压覆盖为 garbage_classify 放入 垃圾分类-本地训练/根目录 神经网络开源模型--- resnet50 models 目录需要手动下载resnet50 的模型文件放入 resnet50模型文件名:resnet50_weights_tf_dim_ordering_tf_kernels_notop.h5 百度就可以找到下载放入即可:https://github.com/fchollet/deep-learning-models/releases/download/v0.2/resnet50_weights_tf_dim_ordering_tf_kernels_notop.h5 2.运行开发环境 进入 "垃圾分类-本地训练"目录 环境初始化 python3 安装框架flaskpip3 install flask 安装tensorflowkeras等依赖 pip3 install tensorflow==1.13.1 pip3 install keras==2.3.1 运行 1.命令python3 train.py开启训练 2.命令python3 predict_local.py开启输入图片测试 3. 训练服务模型部署 进入 "垃圾分类-服务部署"目录 output_model 目录存放的是本地训练完成导出的h5模型文件 models 目录需要手动下载resnet50 的模型文件放入 resnet50模型文件名:resnet50_weights_tf_dim_ordering_tf_kernels_notop.h5 百度就可以找到下载放入即可:https://github.com/fchollet/deep-learning-models/releases/download/v0.2/resnet50_weights_tf_dim_ordering_tf_kernels_notop.h5 环境初始化 安装框架flaskpip3 install flask 安装tensorflowkeras等依赖 pip3 install tensorflow==1.13.1 pip3 install keras==2.3.1 运行 1.命令python3 run.py开启窗口本地调试 2.命令python3 flask_sever.py开启服务部署 3.命令sh ./start.sh开启后台运行服务部署 4.树莓派界面搭建 基于nodejs electron-vue 强烈建议使用cnpm来安装nodejs库 进入 "树莓派端/garbage_desktop"目录 安装依赖 cnpm install 开发模式 cnpm run dev 打包发布 cnpm run build 5.树莓派端flask-api接口操作硬件 进入"进入 "树莓派端/garbage_app_sever"目录" 注意树莓派应该开启I2C,确保pca9685 I2C方式接入后可显示地址 命令:i2cdetect -y 1 查看 地址项 0x40是否已经接入树莓派 运行 python3 app_sever.py 或者 sh start.sh 启动 若提示缺少依赖: pip3 install adafruit-pca9685 pip3 install flask
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值