基于树莓派4B Ubuntu18.04LTS 的OpenCV4.1.1 开发环境部署

环境:

Ubuntu18.04
python:3.6.9
opencv:4.1.1

1.安装cmake

sudo apt-get install cmake
cmake -version

2.安装opencv依赖包

sudo apt-get install build-essential
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev # 处理图像所需的包 
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev  liblapacke-dev 
sudo apt-get install libxvidcore-dev libx264-dev #处理视频所需的包 
sudo apt-get install libatlas-base-dev gfortran # 优化opencv功能
sudo apt-get install ffmpeg

第三行命令安装libjasper-dev时遇到报错

unable to ;ocate package libjasper-dev

解决:
(1)

sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
sudo apt update
sudo apt install libjasper1 libjasper-dev

(2)舍弃jasper这个依赖包。在新版的 ubuntu 中 jasper 相关的图形出来已经被舍弃,他的功能被更强大的包替代,所以删除这段依赖即可。参考https://blog.csdn.net/KIK9973/article/details/118830187

3.编译准备

新建文件夹,下载并解压OpenCV、OpenCV_contrib
下载链接:
https://opencv.org/opencv-4-1-1/
https://github.com/opencv/opencv_contrib/releases/tag/4.1.1
这里将opencv_contirb-4.1.1文件夹放在opencv-4.1.1文件夹里

cd opencv-4.1.1 #以自己路径和文件名为准
unzip opencv-4.1.1.zip
unzip opencv-4.1.1.zip

进入解压后的opencv-4.1.1文件夹, 新建一个名为build的文件夹用来存放cmake编译时产生的临时文件

mkdir build
cd build

配置cmake编译参数

sudo cmake -D CMAKE_BUILD_TYPE=Release -D PYTHON_DEFAULT_EXECUTABLE=/usr/bin/python3 -D PYTHON_INCLUDE_DIR=/usr/include/python3.6 -D PYTHON_INCLUDE_DIR2=/usr/include/x86_64-linux-gnu/python3.6m -D PYTHON_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython3.6m.so -D PYTHON3_NUMPY_INCLUDE_DIRS=/usr/lib/python3/dist-packages/numpy/core/include/ -D OPENCV_GENERATE_PKGCONFIG=ON -D BUILD_opencv_python2=OFF -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_EXTRA_MODULES_PATH=~/repos/opencv-4.1.1/opencv_contrib-4.1.1/modules ..

注意:最后一句话的opencv扩展模型路径要对应改到你自己先前建立的文件路径下
出现如下提示即为成功

Configuring done
Generating done

参数简介及编译过程中报错解决方案请参考:https://waao666.blog.csdn.net/article/details/84197532

4.开始编译

sudo make

报错 No space left on device
尝试:https://blog.csdn.net/qq_35451572/article/details/80778388无果
最终尝试外接U盘扩容(挂载)的方式https://blog.csdn.net/weixin_44244190/article/details/126934960
具体如下:

sudo su  #root权限
fdisk -l  #查看磁盘分区,U盘还没挂载一般会显示在最后
cd /mnt && mkdir /mnt/usb    #将U盘挂载在/mnt目录下的USB文件夹中
mount /dev/sdb4 /mnt/usb    #将U盘设备(/dev/sdb4)挂载到/mnt/usb目录下,此后软件直接安装在这里
#如果挂载完成以后,使用完毕,需要卸载,执行:
umount /mnt/usb     

完成上述步骤后,重新开始编译即可。
下面进行安装

sudo make install

安装完成后运行

python3
import cv2

报错后尝试

pip3 install opencv-python

接着报错,具体如下
在这里插入图片描述
于是根据提示运行

sudo apt install python3-pip

成功后重新运行

pip3 install opencv-python

发现下载速度很慢,只有十几K每秒,于是使用的清华大学的镜像包

pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-python

下载完成后报错ModuleNotFoundError: No module named 'skbuild'
在这里插入图片描述
参考https://blog.csdn.net/GungnirsPledge/article/details/108566415

pip3 install --upgrade pip

然后重新

pip install opencv-python

报错

 WARNING: The scripts f2py, f2py3 and f2py3.6 are installed in '/home/nano/.local/bin' which is not on PATH.
 Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.

在这里插入图片描述
原因:未添加到环境变量
解决:
参考https://blog.csdn.net/LYiiiiiii/article/details/119239206

vi ~/.bashrc
export PATH=/home/ubuntu/.local/bin/:$PATH   #根据warning具体的路径进行替换
source ~/.bashrc  

附编辑方式:
进入编辑模式 i
退出编辑模式 Esc
保存退出 :wq ( :不可忽略)

至此,所有问题解决,重新测试即可

python3
import cv2
cv2.__version__

输出版本号即成功。

参考文献
https://waao666.blog.csdn.net/article/details/84197532
https://blog.csdn.net/qq_37612550/article/details/110398392
https://blog.csdn.net/qq_39708147/article/details/112911526
https://blog.csdn.net/weixin_45052870/article/details/125627476

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要在树莓派4B上安装OpenCV,首先需要新建文件夹并下载解压OpenCVOpenCV_contrib的文件。可以从以下链接下载OpenCVOpenCV_contrib的压缩包:https://opencv.org/opencv-4-1-1/ 和 https://github.com/opencv/opencv_contrib/releases/tag/4.1.1。将下载的opencv_contrib-4.1.1文件夹放在opencv-4.1.1文件夹中。使用以下命令解压下载的文件:cd opencv-4.1.1 #根据实际路径和文件名 unzip opencv-4.1.1.zip unzip opencv-4.1.1.zip。这样就成功下载并解压了OpenCVOpenCV_contrib的文件。 此外,也可以参考一篇介绍在Ubuntu 18.04上安装OpenCV 3.2.0的教程,该教程提供了详细的解决方法,对于想安装OpenCV的用户来说是一个很好的参考。 如果在树莓派4B的Ubuntu 18.04上安装OpenCV时遇到缺少libjasper-dev的问题,可以使用以下命令安装libjasper-dev依赖包:sudo apt-get install libjaster-dev。 综上所述,在树莓派4B上安装OpenCV的步骤包括新建文件夹,下载并解压OpenCVOpenCV_contrib,以及根据需要安装相关依赖包。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [基于树莓派4B Ubuntu18.04LTSOpenCV4.1.1 开发环境部署](https://blog.csdn.net/weixin_49818157/article/details/127861522)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [Ubuntu18.04安装opencv 3.2.0的解决方法](https://download.csdn.net/download/weixin_38637983/12842575)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [树莓派4B Ubuntu18.04安装OpenCv依赖包libjasper-dev出现unable to locate libjasper-dev的解决办法](https://blog.csdn.net/qq_45619513/article/details/115430221)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值