树莓派安装opencv以及部分报错解决方法
1、安装numpy
sudo pip3 install numpy
2、树莓派把根目录扩大到整个SD卡(自行百度)
3.安装opencv可能需要的库
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.下载opencv(文末附网盘资源)
(网盘资源可通过FileZilla传输到树莓派)
cd /home/pi/Downloads
wget https://github.com/Itseez/opencv/archive/3.4.0.zip
wget https://github.com/Itseez/opencv_contrib/archive/3.4.0.zip
注:路径一定要正确
5.解压
cd /home/pi/Downloads
unzip opencv-3.4.0.zip
unzip opencv_contrib-3.4.0.zip
6.设置编译参数
cd /home/pi/Downloads/opencv-3.4.0
mkdir build
cd build
7.设置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-3.4.0/modules -D BUILD_EXAMPLES=ON -D WITH_LIBV4L=ON PYTHON3_EXECUTABLE=/usr/bin/python3.5 PYTHON_INCLUDE_DIR=/usr/include/python3.5 PYTHON_LIBRARY=/usr/lib/arm-linux-gnueabihf/libpython3.5m.so PYTHON3_NUMPY_INCLUDE_DIRS=/home/pi/.local/lib/python3.5/site-packages/numpy/core/include ..
等代CMAKE(成功)
失败请按步骤重新严谨安装
8.编译(耐心等待,报错最多,提供部分错误解决方法)
cd /home/pi/Downloads/opencv-3.4.0/build
make
部分报错方法
1.缺少boostdesc_bgm.i文件
将
boostdesc_bgm.i
boostdesc_bgm_bi.i
boostdesc_bgm_hd.i
boostdesc_lbgm.i
boostdesc_binboost_064.i
boostdesc_binboost_128.i
boostdesc_binboost_256.i
vgg_generated_120.i
vgg_generated_64.i
vgg_generated_80.i
vgg_generated_48.i
拷贝到opencv_contrib/modules/xfeatures2d/src/目录下
(资源见文末)
sudo make
2.对于opencv2/xfeatures2d/cuda.hpp: No such file or
directory 类问题的解决方法
找到对应文件中的#include"/opencv2/xfeatures2d.hpp"
改为绝对路径:#include"/home/pi/Downloads/opencv3.4.0/opencv_contrib3.4.0/modules/xfeatures2d/include/opencv2/xfeatures2d.hpp"
过程仅供参考(其他类似报错方法相同)
sudo make
3.错误:make[2]:
*** [modules/python3/CMakeFiles/opencv_python3.dir/build.make:56:
modules/python3/CMakeFiles/opencv_python3.dir/__/src2/cv2.cpp.o] Error 1
make[1]: ***
[CMakeFiles/Makefile2:21149: modules/python3/CMakeFiles/opencv_python3.dir/all]
Error 2
make: ***
[Makefile:138: all] Error 2]
报错解决方法
根据路径找到cv2.cpp.打开找到
char * str =PyString_AsString(obj);改为
char * str =(char *)PyString_AsString(obj);
sudo make
9.成功后
sudo make install
10.输入python3
import cv2
执行成功即可
百度云链接
1.opencv安装包(链接:https://pan.baidu.com/s/1MRANk2HWSYQuOaYvAtolzA
提取码:b1gl)
2.boostdesc_bgm.i(链接:https://pan.baidu.com/s/1xBDc_2XxkFKXTq9exl4Cgg
提取码:j0e1)
有效的话可以给博主点个赞!
参考大佬们的链接(感谢以下大佬给我的帮助,在这里奉上他们博文的链接)
1.https://www.jianshu.com/p/56929416b4a1
2.https://blog.csdn.net/AlexWang30/article/details/99612188?utm_medium=distribute.pc_relevant_download.none-task-blog-blogcommendfrombaidu-2.nonecase&depth_1-utm_source=distribute.pc_relevant_download.none-task-blog-blogcommendfrombaidu-2.nonecas
3.https://blog.csdn.net/weixin_44152895/article/details/102882502?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.add_param_isCf&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.add_param_isCf
4.https://blog.csdn.net/qq_44357371/article/details/105966714