树莓派编译安装opencv4.2和opencv_contrib-4.2.0

一.有一个已经安装完成系统的Raspbarry Pi

二.将默认中的python2改为python3

1.先删除python2的连接

sudo rm /usr/bin/python

2.链接上python3

sudo ln -s /usr/bin/python3.7 /usr/bin/python

三.正式安装

1.安装numpy

pip install numpy

2.把根目录扩大到整个SD卡

sudo raspi-config

选中Advanced Options这一行,点击键盘Enter键,进入,下面的界面。在这个界面选中Expand Filesystem,确认并重启树莓派。

3.安装所需要的库

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

4.下载opencv4.2 和opencv_contrib-4.2.0

链接:https://pan.baidu.com/s/1O9hAts_s635esRt8nSHDdg 
提取码:yrhx

链接:https://pan.baidu.com/s/1SRNBXMKU3GDesQWjdiEuZg 
提取码:7g25

5.解压 编译

cd /home/pi/Downloads
unzip opencv-4.2.0.zip
unzip opencv_contrib-4.2.0.zip
cd /home/pi/Downloads/opencv-4.2.0
mkdir build
cd build

设置CMAKE参数

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.2.0/modules -D BUILD_EXAMPLES=ON -D WITH_LIBV4L=ON PYTHON3_EXECUTABLE=/usr/bin/python3.7 PYTHON_INCLUDE_DIR=/usr/include/python3.7PYTHON_LIBRARY=/usr/lib/arm-linux-gnueabihf/libpython3.7m.so PYTHON3_NUMPY_INCLUDE_DIRS=/home/pi/.local/lib/python3.7/site-packages/numpy/core/include ..

注意路径

树莓派编译安装opencv4.2和opencv_contrib-4.2.0_第1张图片

 成功界面

编译

cd /home/pi/Downloads/opencv-4.2.0/build
make -j 4

可能出现的错误

1.(缺少文件)

链接:https://pan.baidu.com/s/1dh3K9hv29B_K11Kz5Ti_Uw 
提取码:ife8

2.第二个问题是:头文件不对

解决方法:将/home/pi/Downloads/opencv-4.2.0/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
这几个文件复制粘贴到/home/pi/Downloads/opencv_contrib-4.2.0/modules/xfeatures2d/test这个目录下。

接着:

将/home/pi/Downloads/opencv_contrib-4.2.0/modules/xfeatures2d/test/test_features2d.cpp

文件中的大约51行的位置去掉featuresd/test,修改成下面的样子。

#include "test_detectors_regression.impl.hpp"
#include "test_descriptors_regression.impl.hpp"

将/home/pi/Downloads/opencv_contrib-4.2.0/modules/xfeatures2d/test/test_rotation_and_scale_invariance.cpp

文件中大约7-8行的位置去掉featuresd/test,修改成下面的样子。

#include "test_detectors_invariance.impl.hpp" // main OpenCV repo
#include "test_descriptors_invariance.impl.hpp" // main OpenCV repo

最后编译成功如下:

树莓派编译安装opencv4.2和opencv_contrib-4.2.0_第2张图片

最后

cd /home/pi/Downloads/opencv-4.2.0/build
sudo make install

测试

树莓派编译安装opencv4.2和opencv_contrib-4.2.0_第3张图片

你可能感兴趣的:(python,开发语言)