树莓派python3的opencv下载(编译失败第六步必看)
树莓派python3的opencv下载
这里建议采用VNC下载
不知道怎么通过无线连接的可以查看我的博客里面的
树莓派新手之VNC远程操作篇
第一步,查看内存空间是否充足
由于我们下载的opencv —cmake生成的源文件需要大概5g的空间
为了避免死机卡机
我们最好挑个大一点的SD卡16G就够用了
输入df -h
第二步,在树莓派设置充分利用存储空间
输入sudo raspi-config
选择第七行advance options,回车
选择第一行expand Filesystem,回车
这样子我们就可以充分利用SD卡的存储空间了
退出设置界面,输入sudo reboot重启树莓派
第三步,增大交换空间
输入sudo nano /etc/dphys-swapfile
将CONF_SWAPSIZE 值改回 1024
然后ctrl+o保存,点回车确认保存,然后ctrl+x退出
第四步,安装opencv所需的库
总共8条指令
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
第五步,下载opencv的压缩包
建议不要在树莓派用指令下载,太慢了
在浏览器输入链接直接下载
https://github.com/Itseez/opencv/archive/3.4.0.zip
① 重命名为opencv-3.4.0.zip
https://github.com/Itseez/opencv_contrib/archive/3.4.0.zip
② 重名名为opencv_contrib-3.4.0.zip
通过U盘将文件移植到树莓派/home/pi/Downloads目录下
输入cd /home/pi/Downloads跳到2个压缩包的存储目录下
输入unzip opencv-3.4.0.zip解压
输入unzip opencv_contrib-3.4.0.zip解压
第六步,修改压缩包存在的问题(必看)
我们下载的opencv-3.4.0的压缩包本身存在的一个小问题,
如果不修改的话你可能编译的时候在**84%**的时候报错,从而打断你的编译
点开文件管理器
找到下面路径位置
通过texteditor打开cv2.cpp文件
点击查找功能
查找内容为PyString_AsString
在其前面加入一个(char *)强转数据类型
Ctrl+s保存即可
第七步,设置编译参数
输入cd
/home/pi/Downloads/opencv-3.4.0
输入mkdir创建文件夹build
输入cd build
设置cmake参数生成Makefile文件(直接复制下面的指令)
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 …
别漏掉(后面的两个小点)
直接回车,如果成功了输入ls如下所示可以找到Makefile文件
第八步,编译
有了Makefile文件,接下来的步骤很重要,不能被打断,所以保持电源充足,内存充足,尤为重要,这里再次提醒一下,不要用ssh,时间过长可能会中断
那么,
输入cd /home/pi/Downloads/opencv-3.4.0/build
输入make编译
大概在86%左右卡的时间比较久,遇到不动了,不要紧张
等等等,4个小时,这期间不要使用树莓派运行其他任务,以免出事
完成make之后,安装
输入sudo make install
注意:如果因为一些因素中断了,在build目录下
输入make clean
重新make即可
第九步,在python3上面测试opencv是否安装成功
输入python3
输入import cv2
输入 cv2.version
输入exit()退出
如下所示说明成功了
第十步,收尾工作
如果SD卡空间不足
那么可以删除源文件build,不会影响的,别担心
输入cd /home/pi/Downloads/opencv-3.4.0/
输入sudo rm build -r
之前为了加快编译速度,增大了交换空间
现在让它恢复原样,以防止损坏SD卡
输入sudo nano /etc/dphys-swapfile
将CONF_SWAPSIZE 值改回 100
然后ctrl+o保存,点回车确认保存,然后ctrl+x退出
输入sudo /etc/init.d/dphys-swapfile restart激活更改
树莓派python3的opencv下载(编译失败第六步必看)相关推荐
- 7款必须下载的PC端软件,必看
7款必须下载的PC端软件,必看! 如今的职场内卷程度,看看互联网公司的996作息就能大致明白.想要在如此内卷的情况下脱颖而出,光靠个人的努力是相当困难的,我们必须借助一些外力才行.一个顺手好用的设 ...
- ubuntu下的opencv下载编译安装
1.下载opencv源码 在opencv官网,opencv源码下载路径如下:https://opencv.org/releases/.网页页面如下,选择需要的opencv版本下载对应的sources文 ...
- 树莓派4B爽上流安装python3的OpenCV(人脸检测识别—门禁“环境搭建篇”)
树莓派4B安装OpenCV3.4.0人脸检测识别-门禁"环境搭建篇" 前言 一.准备工作 PC端软件 二.搭建树莓派环境 拓展TF内存卡 Tips:换源(python软件源) 修改 ...
- 树莓派python3.6.8安装opencv_子豪兄教你在树莓派上安装OpenCV
子豪兄教你在树莓派上安装OpenCV 注意,如要换源,只能按本博客换源方法其他会出错 本文介绍了如何在树莓派上安装分别运行在Python2和Python3的OpenCV. 运行在Python2上的Op ...
- 树莓派运行python import os未找到命令_通过pip指令在树莓派上基于Python3安装OpenCV...
前言 Python是现如今在人工智能领域较为热门的编程语言,因其简洁的语言风格.丰富的类库支持以及具有活跃的交流社区,受到广大开发者的喜爱.起初,python是一门辅助科学研究的一门语言,但因其在当今 ...
- 树莓派安装python3替换python2_在树莓派上安装基于python3的OpenCV
书接上文Sebastian Zhou:从零开始在树莓派上安装系统(无显示器和网线)zhuanlan.zhihu.com关于树莓派上安装OpenCV的教程也有很多,但似乎都陷入了一个怪圈,一定要在树莓 ...
- opencv编译笔记(opencv 4.1.0 编译失败缺少opencv_world410d.lib)
问题: https://blog.csdn.net/ezhchai/article/details/80557936 https://zhuanlan.zhihu.com/p/62416504 按照以 ...
- 树莓派python3.7.3安装opencv、TensorFlow2.3
树莓派python3.7.3安装opencv.TensorFlow2.3 不喜勿喷,如果有说错,可以在评论区指出,谢谢. 安装opencv 树莓派本身就自带python2.7和3.7版本,我是卸载了2 ...
- maven常见问题处理(3-3)Gradle编译时下载依赖失败解决方法
maven常见问题处理(3-3)Gradle编译时下载依赖失败解决方法 参考文章: (1)maven常见问题处理(3-3)Gradle编译时下载依赖失败解决方法 (2)https://www.cnbl ...
最新文章
- jdbc hibernate ibatis 操作Blob 和Clob类型字段(不断更新)
- linux c之fdopen(int fd, const char *type)使用总结
- flask redis_在Flask应用程序中将Redis队列用于异步任务
- Go语言中cannot convert adminname (type interface {}) to type *: need type assertion的解决办法...
- Qt 两个Ui 界面传值
- python beautifulsoup多线程分析抓取网页
- Spring: ConfigurationClassUtils类
- linux go环境安装
- 李宏毅机器学习HW2-winner or loser-利用逻辑回归进行收入分类
- oracle生成流水号序列,Oracle序列生成订单流水号
- 首届Filecoin矿工大会会议重点
- NX/UG二次开发孔特征查找
- 积雪草酸肌白蛋白纳米粒|野黄芩苷豆清白蛋白纳米粒|黄芩苷蓖麻蛋白纳米粒(齐岳)
- 仿爱奇艺加载dialog
- 软件测试基础知识汇总(问答篇)
- Resolution-robust Large Mask Inpainting with Fourier Convolutions(2021)
- 微软小娜国外服务器,国外主持人苹果siri和微软小娜测评对比
- MySQL国内镜像下载地址
- 如何配置nginx,实现在手机上查看页面?
- SpringBoot集成Kafka并调优
热门文章
- Python UI自动化测试详解
- JavaScript中日期Date、Math方法及使用例 驼峰命名法 网页显示时间 对数据取整 随机数 返回绝对值 四舍五入
- 影响关键词排名的因素有哪些?
- 如何成为技术领袖【转】
- 超火的举牌加油小人生成器MATLAB复刻版(app designer)
- BZOJ 3609: [Heoi2014]人人尽说江南好
- Apriori 、FP-Growth 和 Eclat 3 种经典的 ARM (关联规则挖掘)算法--自用
- ZStack实践汇 | ZStack云平台应用堡垒机教程
- 900亿的分众传媒危险了?
- 2017年阅读笔记整理