树莓派4B源码编译opencv3.4.1

主要参考:https://blog.csdn.net/simonforfuture/article/details/101716181

零、安装准备:

  升级系统:

  sudo apt-get update

  sudo apt-get upgrade

  安装依赖:

  sudo apt-get install build-essential cmake pkg-config  libjpeg-dev libtiff5-dev libjasper-dev libpng12-dev  libavcodec-dev libavformat-dev libswscale-dev libv4l-dev  libxvidcore-dev libx264-dev  libgtk2.0-dev libgtk-3-dev  libatlas-base-dev gfortran

  安装python3工具:

  sudo apt-get install python3 python3-setuptools python3-dev

  设置pip:

  wget https://bootstrap.pypa.io/get-pip.py

  sudo python3 get-pip.py

一、安装opencv3.4.1

 

  安装numpy:

  sudo pip3 install numpy

  

  安装必要的opencv包:  

  sudo apt-get install libopencv-dev  python-opencv

   

  获取软件包:

  wget -O opencv.zip https://github.com/Itseez/opencv/archive/3.4.1.zip

  wget -O opencv_contrib.zip https://github.com/Itseez/opencv_contrib/archive/3.4.1.zip

  unzip opencv.zip

  unzip opencv_contrib.zip

  //也可以用下载工具到对应软件地址下载

    源码编辑安装:

  cd ~ & mkdir opencv

  mv  opencv_contrib/  ~/opencv/

  cd ~/opencv-3.4.1/ & mkdir build

  cd build

  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=~/opencv/opencv_contrib-3.4.1/modules \

      -D ENABLE_PRECOMPILED_HEADERS=OFF \

      -D BUILD_EXAMPLES=ON .. 

  cmake过程中出现:fatal error: boostdesc_bgm.i: 没有那个文件或目录 #include "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/opencv_contrib-3.4.1/modules/xfeatures2d/src目录即可 

  错误的原因是缺少cuda.hpp文件,这些文件在opencv_contrib-.4.1/modules/xfeatures2d/include/opencv2目录下,所以直接将这个目录下的文件拷贝到opencv-3.4.1/modules/stitching/include/opencv2/解决,其他请找百度吧 

 

  修改交换空间: 

  停止交换空间的使用:sudo /etc/init.d/dphys-swapfile stop

  增加交换空间容量,修改/etc/dphys-swapfile中的变量CONF_SWAPSIZE的值100改成1024或2048

  开启交换空间的使用:sudo /etc/init.d/dphys-swapfile start

 

  多线程编译opencv:(需要漫长的等待,估计要2小时左右吧) 

  make -j4

  当make的结果为100%时,opencv编译成功,安装命令:

  sudo make install

  sudo ldconfig

  

  测试:

  进入python3环境:

  终端输入:python3

       import cv2

       cv2.__version__

       显示版本号为‘3.4.1’即为正常

  

  恢复交换分区的大小:

  停止交换空间的使用:sudo /etc/init.d/dphys-swapfile stop

  增加交换空间容量,修改/etc/dphys-swapfile中的变量CONF_SWAPSIZE的1024或2048改成值100

  开启交换空间的使用:sudo /etc/init.d/dphys-swapfile start

    

   

posted @   叕叒双又  阅读(448)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示