(1)首先,更换软件源
sudo nano /etc/apt/sources.list
将原来的地址用“#”注释掉,换成清华源(也可以换成其他源,比如中科大源),用下面内容替代。接着Ctrl+O,回车, Ctrl+X退出
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
sudo nano /etc/apt/sources.list.d/raspi.list
用#注释掉原文件内容,用以下内容取代,然后Ctrl+O回车 Ctrl+X:
deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui
sudo apt-get update
sudo apt-get upgrade
过程中需要有的地方需要按y,按下y即可;还有的地方需要press q就按下q好了
sudo apt-get install build-essential cmake git 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
在电脑直接访问网址下载OpenCV压缩文件
https://github.com/Itseez/opencv/archive/4.1.1.zip
https://github.com/Itseez/opencv_contrib/archive/4.1.1.zip
网速慢的,可以点击这里下载
利用软件WinSCP,在右侧树莓派home/pi目录下创建Downloads文件夹并打开,将左侧电脑上两个压缩包传输到home/pi/Downloads目录下
cd /home/pi/Downloads
unzip opencv-4.1.1.zip
unzip opencv_contrib-4.1.1.zip
cd /home/pi/Downloads/opencv-4.1.1
mkdir build
cd build
注意:检查所有PATH路径是否在你本地存在,以下是我的树莓派的路径
注意,下面这是一行命令(比较长)(包括最后那俩点儿),需要耐心等待十五分钟左右
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-4.1.1/modules -D BUILD_EXAMPLES=ON -DCMAKE_SHARED_LINKER_FLAGS='-latomic' -D WITH_LIBV4L=ON PYTHON3_EXECUTABLE=/usr/bin/python3.7 PYTHON_INCLUDE_DIR=/usr/include/python3.7 PYTHON_LIBRARY=/usr/lib/arm-linux-gnueabihf/libpython3.7m.so PYTHON3_NUMPY_INCLUDE_DIRS=/home/pi/.local/lib/python3.7/site-packages/numpy/core/include ..
跳转到目录
cd /home/pi/Downloads/opencv-4.1.1/build
开始编译
make
注意:保证树莓派有至少5G的存储空间,建议本命令用树莓派桌面上的命令行工具运行,而不要使用无线远程ssh连接。因为执行命令时间太长,中途如果ssh断线的话无法得知是否已经安装完毕。
注意:静待五个小时的编译。注意,在此期间,树莓派要供电充足,不要运行其它任务,以免报错。
解决办法:将点击此处下载的文件复制到/home/pi/Downloads/opencv_contrib-4.1.1/modules/xfeatures2d/src 路径
接着继续
make
opencv_contrib-4.1.1某个cpp类型文件中缺少头文件,在该文件夹找不到
解决办法:
第一步,在VNC文件管理中/home/pi/Downloads/opencv-4.1.1/modules/features2d/test路径下,下面两个文件进行复制
第二步,将上面两个文件粘贴到/home/pi/Downloads/opencv_contrib-4.1.1/modules/xfeatures2d/test路径下
第三步,打开下面这个文件 test_features2d.cpp
第四步,将头文件引用改成下图所示
接着继续
make
也是头文件缺失
解决办法:同样的步骤
第一步,复制
第二步,粘贴
第三步,打开下面文件
第四步,修改头文件引用
接着继续
make
解决办法:同样的操作
第一步,复制
第二步,粘贴
第三步,打开下面文件
第四步,添加头文件引用(前面是修改,这个是需要添加)
接着继续
make
# 回到之前文件夹
cd /home/pi/Downloads/opencv-4.1.1/build
# 开始安装
sudo make install
cd ~
python3
import cv2
有疑问可以在下面留言,看到会第一时间回复,如有不足之处,请不吝赐教
**参考文献:**
https://blog.csdn.net/qq_27149279/article/details/105331034