树莓派安装opencv4.3.0

前言

编译前先看编译可能遇到的问题,提前修改添加树莓派的swap交换分区,同时可以提前将缺失文件补充进文件夹

一、安装OpenCV所依赖的各种工具和图像视频库

软件更新升级

// 软件源更新
sudo apt-get update 

// 升级本地所有安装包,版本过高反而需要降级才能安装
sudo apt-get upgrade

分别安装各种依赖工具

// 安装build-essential、cmake、git和pkg-config
sudo apt-get install build-essential cmake git pkg-config 

// 安装jpeg格式图像工具包
sudo apt-get install libjpeg8-dev 

// 安装tif格式图像工具包
sudo apt-get install libtiff5-dev 

// 安装JPEG-2000图像工具包
sudo apt-get install libjasper-dev 

// 安装png图像工具包
sudo apt-get install libpng12-dev

//安装视频I/O包
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev

//安装gtk2.0(树莓派很可能下载错误,更换中科大或者清华源即可) 
sudo apt-get install libgtk2.0-dev

//优化函数包
sudo apt-get install libatlas-base-dev gfortran

一次性安装所有依赖工具

//全套安装指令
sudo apt-get install build-essential cmake git pkg-config libjpeg8-dev libtiff5-dev libjasper-dev libpng12-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk2.0-dev libatlas-base-dev gfortran -y

二、安装编译OpenCV

下载OpenCV

// 下载OpenCV
wget -O opencv-4.3.0.zip https://github.com/Itseez/opencv/archive/4.3.0.zip

// 下载OpenCV_contrib库:
wget -O opencv_contrib-4.3.0.zip https://github.com/Itseez/opencv_contrib/archive/4.3.0.zip

阿里云盘下载链接

解压文件

// 压缩包路径以"/home/pi/Desktop/opencv4.3.0"为例
// 解压OpenCV
unzip opencv-4.3.0.zip

// 解压OpenCV_contrib库:
unzip opencv_contrib-4.3.0.zip

在这里插入图片描述

准备编译

// 打开源码文件夹,这里以4.3.0为例
cd opencv-4.3.0

// 新建release文件夹
mkdir release

// 进入release文件夹
cd release

//* CMAKE_BUILD_TYPE是编译方式
* CMAKE_INSTALL_PREFIX是安装目录
* OPENCV_EXTRA_MODULES_PATH是加载额外模块
* INSTALL_PYTHON_EXAMPLES是安装官方python例程
* BUILD_EXAMPLES是编译例程  **/

//这五行直接复制,回车,加载额外模块路径以"/home/pi/Desktop/opencv4.3.0/opencv_contrib-4.3.0/modules"为例
sudo cmake -D CMAKE_BUILD_TYPE=RELEASE \
	-D CMAKE_INSTALL_PREFIX=/usr/local \
    -D OPENCV_EXTRA_MODULES_PATH=/home/pi/Desktop/opencv4.3.0/opencv_contrib-4.3.0/modules \
    -D INSTALL_PYTHON_EXAMPLES=ON \
    -D BUILD_EXAMPLES=ON ..

编译

// 开始编译,漫长的等待
// 若机器存在多核,则可执行sudo make -j4,该命令使用4核同时编译
sudo make

编译可能遇到的问题

问题1:fatal error: boostdesc_bgm.i: No such file or directory

缺少boostdesc_bgm.i、boostdesc_bgm_bi.i、boostdesc_bgm_hd.i、boostdesc_binboost_064.i、boostdesc_binboost_128.i、boostdesc_binboost_256.i、boostdesc_lbgm.i、vgg_generated_48.i、vgg_generated_64.i、vgg_generated_80.i、vgg_generated_120.i等文件
请添加图片描述

请添加图片描述

解决方法:
将缺失文件添加至"/home/pi/Desktop/opencv4.3.0/opencv_contrib-4.3.0/modules/xfeatures2d/src/"目录下

请添加图片描述

重新编译(执行编译命令将继续编译)

缺失文件阿里云盘下载链接

问题2:fatal error: features2d/test/test_detectors_regression.impl.hpp: No such file or directory

缺少features2d/test/test_detectors_regression.impl.hpp文件

请添加图片描述

解决方法:
opencv/module/features2d文件夹复制至编译所在路径下(/home/pi/Desktop/opencv4.3.0/opencv-4.3.0/release)
重新编译(执行编译命令将继续编译)

问题3:编译卡在98%

请添加图片描述

解决方法:
添加树莓派的swap交换分区,更改conf_swapsize的值

sudo nano /etc/dphys-swapfile

更改前:

请添加图片描述

更改后:

请添加图片描述

重启dphys-swapfile服务:

sudo /etc/init.d/dphys-swapfile restart

安装

// 安装
sudo make install
// 更新动态链接库
sudo ldconfig

三、测试

//终端输入python3,然后输入导入cv2
python3
>>import cv2
>>cv2.__version__
'4.3.0'

请添加图片描述

安装成功(亲测树莓派zero、树莓派4B有效)

猜你喜欢

转载自blog.csdn.net/SCzeidan/article/details/121557980