1.SSH连接
网线连接电脑---在无线图标上右键:打开“网络和internet设置”---更改适配器设置
在WLAN上面右键,选择属性---共享,勾上√
在cmd里面,可以输入:
ping raspberrypi.local
(若显示不是ip,则ping -4 raspberrypi.local)
2.换源:
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-o 保存,按 ctrl-x 关闭。
sudo nano /etc/apt/sources.list.d/raspi.list
内容替换为
deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui
3.安装tensorflow
查看环境是否已经安装
python3 --version
pip3 --version
如果没有安装了python3和pip3,则sudo apt update sudo apt install python3-dev python3-pip
安装对应版本为python3.7 + tensorflow
下载tensorflow到电脑上:https://www.piwheels.org/simple/tensorflow/或者https://github.com/lhelontra/tensorflow-on-arm/releases,此处下载为2.0
如果是pi1或者pizero(包括zerow),选择结尾是armv6l的;如果是树莓派2/3/4就选择结尾是armv7l.whl的。
1.首先安装tensorflow需要的一些依赖和工具:
sudo apt-get update
# For Python 2.X
sudo apt-get install python-pip python-dev
# For Python 3.X
sudo apt-get install python3-pip python3-dev
2.解决numpy的一个依赖
sudo apt install libatlas-base-dev
如果在安装过程中如果被打断,可以看一下具体是缺少了哪个包,然后手动安装上。
若之前安装过其他tensorflow版本,需要先卸载
sudo pip3 uninstall tensorflow
3.进入tensorflow安装包路径下,进行安装
#后面install的文件名按照自己下载的文件名来更改
# For Python 2.X
sudo pip install tensorflow-1.13.1-cp27-none-linux_armv7l.whl
# For Python 3.X
sudo pip3 install tensorflow-1.13.1-cp37-none-linux_armv7l.whl
4.测试tensorflow
#进入对应的python
python3
在python3界面中输入以下代码
tensorflow<2.0
import tensorflow as tf
hello = tf.constant('Hello!')
sess = tf.Session()
print(sess.run(hello))
tensorflow>2.0
import tensorflow as tf
#查看tensorflow版本
print(tf.__version__)
4.安装opencv
1.在树莓派的终端界面通过wegt命令下载
cd /home/pi/Downloads
wget https://github.com/Itseez/opencv/archive/3.4.0.zip
wget https://github.com/Itseez/opencv_contrib/archive/3.4.0.zip
2.安装numpy,若已安装则忽略:sudo pip3 install numpy
3.在树莓派设置中把根目录扩大到整个SD卡
sudo raspi-config
Advanced Options
选择Expand Filesystem,将根目录扩展到这个SD卡,充分利用SD卡的存储空间。如果不进行这一步,后续命令会出现卡死。退出设置界面,重启树莓派。
sudo reboot
4.安装OpenCV所需的库
依次在终端输入以下命令进行安装
sudo apt-get install build-essential git cmake pkg-config -y
sudo apt-get install libjpeg8-dev -y
sudo apt-get install libtiff5-dev -y
sudo apt-get install libjasper-dev -y
sudo apt-get install libpng12-dev -y
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev -y
sudo apt-get install libgtk2.0-dev -y
sudo apt-get install libatlas-base-dev gfortran -y
5.解压opencv压缩包
cd /home/pi/Downloads
unzip opencv-3.4.0.zip
unzip opencv_contrib-3.4.0.zip
6.配置编译文件
cd /home/pi/Downloads/opencv-3.4.0
mkdir build
cd build
设置CMAKE参数,注意,下面这是一行命令(包括最后那俩点儿),需要耐心等待十五分钟左右:
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D OPENCV_EXTRA_MODULES_PATH=/home/pi/Downloads/opencv_contrib-3.4.0/modules -D BUILD_EXAMPLES=ON -D WITH_LIBV4L=ON PYTHON3_EXECUTABLE=/usr/bin/python3.5 PYTHON_INCLUDE_DIR=/usr/include/python3.5 PYTHON_LIBRARY=/usr/lib/arm-linux-gnueabihf/libpython3.5m.so PYTHON3_NUMPY_INCLUDE_DIRS=/home/pi/.local/lib/python3.5/site-packages/numpy/core/include ..
注意:标红位置更改;此处为一行代码,不要分行
7.编译
cd /home/pi/Downloads/opencv-3.4.0/build
make && sudo make install
此时opencv3.4.0就安装好了
接下来就是测试了
8.测试
python3
import cv2
cv2.__version__
注:
1.在编译到75%左右时可能会出现openc_contrib 提示缺少boostdesc_bgm.i文件而出错
这个是由于官方所给的那两个包不全,(没有此错误的可以忽略)
解决方法如下:
可以在百度云盘里下载然后将所有带i结尾的文件全部都拷贝到 opencv_contrib/modules/xfeatures2d/src/ 路径下即可
树莓派安装opencv时丢失的文件:
链接:https://pan.baidu.com/s/1xi6_5NuTFiP4SD649FgIJw
提取码:mbsj
然后继续上面的编译操作即可
2.在编译到94%左右时可能会出现fatal error: opencv2/xfeatures2d/cuda.hpp: 没有那个文件或目录的错误标志 (没有此错误的可以忽略)
这个是由于之前在树莓派的python2环境下安装了opencv所致
解决方法如下:
将/home/pi/Downloads/opencv_contrib-3.4.0/modules/xfeatures2d/include/opencv2目录下的xfeatures2d文件夹和xfeatures2d.hpp文件复制粘贴到
/home/pi/Downloads/opencv-3.4.0/modules/stitching/include/opencv2目录下即可解决,
3.对于树莓派4B,在编译到99%左右时可能会出现
make[2]: *** [modules/python3/CMakeFiles/opencv_python3.dir/build.make:63:modules/python3/CMakeFiles/opencv_python3.dir/__/src2/cv2.cpp.o] 错误 1
make[1]: *** [CMakeFiles/Makefile2:21769:modules/python3/CMakeFiles/opencv_python3.dir/all] 错误 2
make: *** [Makefile:163:all] 错误 2
的错误标志(没有此错误的可以忽略)
这个可能是由于系统版本不同和树莓派版本的不兼容所致
解决方法如下:
首先找到/home/pi/Downloads/opencv-3.4.0/modules/python/src2 中的cv2.cpp文件,
然后在第885行把char* 改成 const char* 即可解决,最后继续上面的编译操作即可。
注:图片引用了其他博客作者。