树莓派4B(4G+64G)安装opencv-3.40所遇到的问题
1)配置树莓派
用putty登录树莓派初始用户名+密码(pi+raspberry)
sudo raspi-config
# 进入树莓派的配置界面
- 选择第五项
- 全部选择 enable 按 Tab选择Finish
- 回车退出重启
- 配置源(用网页打开https://mirror.tuna.tsinghua.edu.cn/help/raspbian/)
在树莓派命令行输入 sudo apt-get install vim
# 安装vim编译器
按Y继续
完成
sudo vi /etc/apt/sources.list
#配置清华源
#按i插入,输入清华源
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
:wq!
#先Esc 然后:wq!保存退出
同理 sudo /etc/apt/sources.list.d/raspi.list
输入
deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui
这里不再阐述
给pip换源
sudo mkdir ~/.pip
ls .pip
sudo nano pip.conf
#把下面语句复制pip.conf
[global]
timeout = 10
index-url = http://mirrors.aliyun.com/pypi/simple/
extra-index-url= http://pypi.douban.com/simple/
[install]
trusted-host=
mirrors.aliyun.com
pypi.douban.com
基本配置完成然后进行升级
sudo apt-get update
sudo apt full-upgrade
**安装opencv **
- 在python2下安装oepncv
标题以下内容以代码为主,如遇到重要问题会截图演示
sudo apt-get install libopencv-dev
sudo apt-get install python-opencv
- 安装numpy
sudo pip3 install numpy
- 安装库
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
用迅雷复制下载
wget https://github.com/Itseez/opencv/archive/3.4.0.zip
wget https://github.com/Itseez/opencv_contrib/archive/3.4.0.zip
文件名分别是opencv-3.4.0 和 opencv_contrib-3.4.0
- 创建文件夹
mkdir -p opencv_csdn #可以随便起,并将下载的文件放入其中
#解压文件
cd /home/pi/opencv_csdn
unzip opencv-3.4.0.zip
unzip opencv_contrib-3.4.0.zip
创建build
cd /home/pi/opencv_csdn/opencv-3.4.0
mkdir build
cd build
#检查python3版本
在命令行输入python3
这里是python 3.7.3
cd /home/pi/opencv_csdn/opencv-3.4.0/bulid
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/opencv_csdn/opencv_contrib-3.4.0/modules -D BUILD_EXAMPLES=ON -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 ..
#上面可以修改的位置一个是python3的版本和地址/home/pi/*opencv_csdn*;PYTHON3_EXECUTABLE=/usr/bin/*python3.7*;PYTHON_INCLUDE_DIR=/usr/include/*python3.7*;PYTHON_LIBRARY=/usr/lib/arm-linux-gnueabihf/*libpython3.7m*;PYTHON3_NUMPY_INCLUDE_DIRS=/home/pi/.local/lib/*python3.7*
成功接下来就是最麻烦的
将.i文件放入/home/pi/opencv_csdn/opencv_contrib-3.4.0/modules/xfeatures2d/src这个目录下
make -j4
#不要怕,怕一辈子都要输
问题1 :按文件提示打开此文件 :(/home/pi/opencv_csdn/opencv-3.4.0/modules/stitching/include/opencv2/stitching/detail)打开matchers.hpp
52行提示找不到,于是输入路径(/home/pi/opencv_csdn/opencv_contrib-3.4.0/modules/xfeatures2d/include/opencv2/xfeatures2d)
make -j4
#继续奥里给!
生活就是问题叠着问题
按图示打开此文件(/home/pi/opencv_csdn/opencv-3.4.0/modules/stitching/src)
又是cuda 继续输入上个路径(/home/pi/opencv_csdn/opencv_contrib-3.4.0/modules/xfeatures2d/include/opencv2/xfeatures2d)
make -j4
#面对cuda的错误就是勇敢的去面对他
同理打开目录(/home/pi/opencv_csdn/opencv-3.4.0/modules/stitching/src)
把目录补全(/home/pi/opencv_csdn/opencv_contrib-3.4.0/modules/xfeatures2d/include/opencv2)
为啥这么多问题(/home/pi/opencv_csdn/opencv_contrib-3.4.0/modules/xfeatures2d/include/opencv2)
最后一个补全地址的问题了
补全它(/home/pi/opencv_csdn/opencv_contrib-3.4.0/modules/xfeatures2d/include/opencv2/xfeatures2d)
make -j4
#你过来呀!
最后一个问题不过很好弄
在目录(/home/pi/opencv_csdn/opencv-3.4.0/modules/python/src2/cv.2)在 char 前面加const
#不过能发现这个问题的确实是个神
终于可以编译成功了!
最后一步
sudo make install
#这个世界满街都是钱,只要能走到最后!
文件下载地址://download.csdn.net/download/qq_43161960/12201675
参考: https://zhuanlan.zhihu.com/p/46032511;https://ask.csdn.net/questions/772479 ;https://blog.csdn.net/AlexWang30/article/details/99612188;https://blog.csdn.net/weixin_44152895/article/details/102882502