树莓派4B安装OpenCV4.1.1

树莓派4B安装OpenCV4.1.1

  • 一、更换国内源
  • 二、更新
  • 三、安装依赖包
  • 四、下载两个OpenCV压缩文件
  • 五、解压两个OpenCV压缩文件
  • 六、设置编译参数
  • 七、设置CMAKE参数
  • 八、编译
  • 九、编译中会出现的报错
      • 遇到的报错1
      • 遇到的报错2
      • 遇到的报错3
      • 遇到的报错4
  • 十、安装部署
  • 十一、测试

一、更换国内源

(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

树莓派4B安装OpenCV4.1.1_第1张图片
(2)还要更换系统源

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

树莓派4B安装OpenCV4.1.1_第2张图片

二、更新

sudo apt-get update

树莓派4B安装OpenCV4.1.1_第3张图片

sudo apt-get upgrade

过程中需要有的地方需要按y,按下y即可;还有的地方需要press q就按下q好了
树莓派4B安装OpenCV4.1.1_第4张图片

三、安装依赖包

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压缩文件

在电脑直接访问网址下载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目录下
树莓派4B安装OpenCV4.1.1_第5张图片

五、解压两个OpenCV压缩文件

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 

七、设置CMAKE参数

注意:检查所有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 ..

树莓派4B安装OpenCV4.1.1_第6张图片

八、编译

跳转到目录

cd /home/pi/Downloads/opencv-4.1.1/build

开始编译

make

注意:保证树莓派有至少5G的存储空间,建议本命令用树莓派桌面上的命令行工具运行,而不要使用无线远程ssh连接。因为执行命令时间太长,中途如果ssh断线的话无法得知是否已经安装完毕。
注意:静待五个小时的编译。注意,在此期间,树莓派要供电充足,不要运行其它任务,以免报错。

九、编译中会出现的报错

遇到的报错1

树莓派4B安装OpenCV4.1.1_第7张图片
解决办法:将点击此处下载的文件复制到/home/pi/Downloads/opencv_contrib-4.1.1/modules/xfeatures2d/src 路径
树莓派4B安装OpenCV4.1.1_第8张图片
接着继续

make

遇到的报错2

opencv_contrib-4.1.1某个cpp类型文件中缺少头文件,在该文件夹找不到树莓派4B安装OpenCV4.1.1_第9张图片
解决办法:
第一步,在VNC文件管理中/home/pi/Downloads/opencv-4.1.1/modules/features2d/test路径下,下面两个文件进行复制
树莓派4B安装OpenCV4.1.1_第10张图片
第二步,将上面两个文件粘贴到/home/pi/Downloads/opencv_contrib-4.1.1/modules/xfeatures2d/test路径下
树莓派4B安装OpenCV4.1.1_第11张图片

第三步,打开下面这个文件 test_features2d.cpp
树莓派4B安装OpenCV4.1.1_第12张图片
树莓派4B安装OpenCV4.1.1_第13张图片
第四步,将头文件引用改成下图所示树莓派4B安装OpenCV4.1.1_第14张图片
接着继续

make

遇到的报错3

也是头文件缺失树莓派4B安装OpenCV4.1.1_第15张图片
解决办法:同样的步骤
第一步,复制
树莓派4B安装OpenCV4.1.1_第16张图片
第二步,粘贴树莓派4B安装OpenCV4.1.1_第17张图片
第三步,打开下面文件树莓派4B安装OpenCV4.1.1_第18张图片
树莓派4B安装OpenCV4.1.1_第19张图片
第四步,修改头文件引用树莓派4B安装OpenCV4.1.1_第20张图片
接着继续

make

遇到的报错4

树莓派4B安装OpenCV4.1.1_第21张图片
解决办法:同样的操作
第一步,复制
树莓派4B安装OpenCV4.1.1_第22张图片
第二步,粘贴树莓派4B安装OpenCV4.1.1_第23张图片
第三步,打开下面文件树莓派4B安装OpenCV4.1.1_第24张图片
第四步,添加头文件引用(前面是修改,这个是需要添加)树莓派4B安装OpenCV4.1.1_第25张图片
接着继续

make

接下来的编译就没遇到问题了
树莓派4B安装OpenCV4.1.1_第26张图片

十、安装部署

# 回到之前文件夹
cd /home/pi/Downloads/opencv-4.1.1/build
# 开始安装
sudo make install

安装成功
树莓派4B安装OpenCV4.1.1_第27张图片

十一、测试

cd ~
python3
import cv2

成功
树莓派4B安装OpenCV4.1.1_第28张图片

有疑问可以在下面留言,看到会第一时间回复,如有不足之处,请不吝赐教

**参考文献:**
https://blog.csdn.net/qq_27149279/article/details/105331034

你可能感兴趣的:(OpenCV4.1.1,linux,opencv)