最近需要用opencv在树莓派上开发项目,参考了网上的部分教程,入了不少坑,因此写这一篇博客帮助树莓派初学者高效的使用opencv库进行AI应用,此教程采用源码编译的方式进行opencv安装:
第一步【不需要更换国内源,直接使用树莓派自带的官方源】// 安装必要的opencv库
sudo apt-get update
sudo apt-get upgrade
sudo nano /etc/dphys-swapfile//把该文件的CONF_SWAPSIZE=100替换为CONF_SWAPSIZE=2048
CONF_SWAPSIZE=2048
sudo apt-get install build-essential cmake pkg-config
sudo apt-get install libjpeg-dev libtiff5-dev libjasper-dev libpng-dev
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
sudo apt-get install libxvidcore-dev libx264-dev
sudo apt-get install libgtk2.0-dev libgtk-3-dev
sudo apt-get install libatlas-base-dev gfortran
第二步【更换国内源】
1:更换软件源用sudo命令进入/etc/apt/sources.list文件夹将官方源用#注释掉
sudo nano /etc/apt/sources.list
更换为阿里源:
deb http://mirrors.aliyun.com/raspbian/raspbian/ buster main contrib non-free rpi deb-src http://mirrors.aliyun.com/raspbian/raspbian/ buster main contrib non-free rpi
2:更换系统源
sudo nano /etc/apt/sources.list.d/raspi.list
将官方的源用#注释掉更换为阿里源:
deb http://mirrors.aliyun.com/raspbian/raspbian/ buster main deb-src http://mirrors.aliyun.com/raspbian/raspbian/ buster main第三步安装【cmake】
sudo apt install cmake第四步【获取源码】
//opencv版本可更改为最新版 wget -O opencv.zip https://github.com/opencv/opencv/archive/4.5.1.zip wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.5.1.zip第五步【解压】
unzip opencv.zip unzip opencv_contrib.zip第六步【加一些必要的文件加快编译速度】
1.在opencv_contrib/modules/xfeatures2d/src/ 路径下放入以下文件
提取码:lenw
2.将opencv-4.5.1/modules/features2d/test/文件下的:
test_descriptors_invariance.impl.hpp test_descriptors_regression.impl.hpp test_detectors_invariance.impl.hpp test_detectors_regression.impl.hpp test_invariance_utils.hpp
拷贝到opencv_contrib-4.5.1/modules/xfeatures2d/test/文件下
3.将opencv_contrib-4.5.1/modules/xfeatures2d/test/test_features2d.cpp文件下的
#include "features2d/test/test_detectors_regression.impl.hpp" #include "features2d/test/test_descriptors_regression.impl.hpp"
替换为:
#include "test_detectors_regression.impl.hpp" #include "test_descriptors_regression.impl.hpp"
4.将opencv_contrib-4.4.5.1/modules/xfeatures2d/test//test_rotation_and_scale_invariance.cpp文件下的:
#include "features2d/test/test_detectors_invariance.impl.hpp" #include "features2d/test/test_descriptors_invariance.impl.hpp"
替换为:
#include "test_detectors_invariance.impl.hpp" #include "test_descriptors_invariance.impl.hpp"第七步【安装python超级计算器numpy】
sudo pip3 install numpy第八步【编译】
大概需要两个小时
cd ~/opencv-4.5.1/ mkdir build cd build cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D INSTALL_PYTHON_EXAMPLES=ON -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-4.5.1/modules -D BUILD_EXAMPLES=ON .. make -j4 sudo make install && sudo ldconfig sudo reboot第九步【验证】
用python进行验证,出现4.5.1证明安装成功
pi@raspberrypi:~ $ python3[按回车键] >>> import cv2【按回车键】 >>> cv2.__version__【按回车健】 '4.5.1' >>>
参考以下博客:
https://blog.csdn.net/pj18862486309/article/details/108686555
https://blog.csdn.net/chengyq116/article/details/86514237



