树莓派编译opencv4
前言
我用的是 树莓派3b 编译的 opencv4.1.0,如果不想编译可以直接下载我编译好的。
直接 make install
,或者按照我后续步骤复制动态链接库。
准备
需要调节虚拟内存大小,否则编译时会卡死。
vim /etc/dphys-swapfile
conf_swapsize 改为需要大小,以mb大小为单位。
重启 dphys-swapfile服务,使虚拟内存空间生效。
service dphys-swapfile restart
查看虚拟内存分配大小
free -m
依赖:
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
如果不安装这些,编译后我发现没有图片显示的窗体,导致白白编译了一次(浪费了很多时间)。
编译用的cmake,这里我用cmake-gui
sudo apt install cmake-gui
点击完Configure,然后进行配置
BUILD_opencv_world 我一般都勾上(将很多链接库集成到world链接库,方便后面复制)。
BUILD_JAVA 取消勾选,我不需要编程java使用的。
BUILD_SHARED_LBS 勾选上,让其建立动态链接库。
BUILD_opencv_python3 勾选上。
BUILD_opencv_python2 取消勾选。
点击 Generate 。
编译
make -j4
安装
当然如果直接使用 make install 命令可以安装,但是也会安装c++的头文件和其它的一些依赖库,我只需要python上的依赖链接库,所以我单独一个一个复制的。
编译好,在 opencv-4.1.0/install/lib
中
将 libopencv_world.so.4.1.0 复制到 /lib/arm-linux-gnueabihf/
目录中,然后使用命令ldconfig 更新链接库。
将 opencv-4.1.0/install/lib/python3
中的 cv2.cpython-37m-arm-linux-gnueabihf.so 复制到 /lib/python3.7/
目录中。
最后进入目录 opencv-4.1.0/install/python_loader
:
python3 setup.py install
树莓派编译opencv4的更多相关文章
- 树莓派编译C++
首次研究树莓派~ 安装的Linux 编译C++时,就出现了问题,未定义!!无法识别 查了原因是没有安装 build-essential 解决方法 sudo apt-get install buil ...
- 树莓派编译安装opencv3 (2019.1.6更新)
一.更新系统 sudo apt-get update sudo apt-get upgrade sudo rpi-update #重启系统 sudo reboot 二.安装依赖库及程序 sudo ap ...
- 树莓派编译nginx,支持rtmp直播
树莓派3B+ 系统更新至最新 下载依赖 sudo apt-get update sudo apt-get install libxslt1-dev libgd-dev libgeoip-dev lib ...
- 树莓派编译安装 EMQ 服务器
前言 EMQ 是一款开源的物联网 MQTT 消息服务器,使用 Erlang/OTP 语言平台设计,在 DIY 智能家居时可以作为网关,前几天摸索了一下在树莓派中安装 EMQ 的方法,记录一下. 步骤 ...
- 树莓派编译安装 FFmpeg(添加 H.264 硬件编解码器支持)
说明 FFmpeg 是一套开源的音视频编解码库,有非常强大的功能,包括视频采集功能.视频格式转换等.众所周知视频编解码是一个非常消耗系统资源的过程,而树莓派自带了 H.264 的硬件编解码器,因此本文 ...
- 编译opencv4.5.0
1. 环境vs2017或其它版本cmake-3.18设置环境变量OPENCV_TEST_DATA_PATH 值设置为 D:\sdk\vs2017\opencv-4.5.0\opencv_extra-4 ...
- Ubuntu16桌面版编译OpenCV4的java库和so库
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- win10 cmake编译 opencv4.0 + pyhton3.7x64
在超极本上本来不想编译了,反正没有cuda.但发现即使下载的opencv_contrib也不包含sift等等nonfree库了,要自己编译开编译选项才可以.坑啊,自己编译吧.反正opencv已经这么庞 ...
- 树莓派编译ncnn
1.从github上下载ncnn git clone --recursive https://github.com/Tencent/ncnn 2.在ncnn根目录下创建build目录,安装cmake编 ...
- [Linux] 树莓派编译python3.7.4
python3.7.4 源码编译后遇到ssl错误: pip is configured with locations that require TLS/SSL, however the ssl mod ...
随机推荐
- Python工具箱系列(五)
上一期介绍了Anaconda的安装,本期介绍Miniconda的安装,它们共同的部分是Conda,确实如此.Conda是一个开源的包管理系统,本身的志向非常宏大,要为Python. R. Ruby. ...
- Exchange备份和日志清除
最近新部署Exchange 2019,虽然变化不大,但是也遇到了一些小问题.随着深入研究,就能发现一些以前被忽视的点.Exchange完成备份后,数据库日志并没有被清除,依然存在.https://ww ...
- KubeOperator界面,集群详情中的存储,存储提供商
点击"添加",假设选择的类型是rook-ceph,表示的是在这个k8s集群里创建rook-ceph集群,而不是显示已经存在的集群 意味着可以使用这种办法在k8s集群里创建rook- ...
- 使用kubectl命令删除某个目录下所有的yaml文件
kubectl delete -f .
- PAT乙级 1024 科学计数法
思路 1.尝试失败:一开始想打算把结果直接存在一个字符串中,后来发现当指数大于0的时候还需要分别考虑两种情况,工程量巨大,尝试失败,于是借鉴了其他大佬思路,写出了ac代码 2.ac思路:首先取指数的绝 ...
- switch分支
说明: 当表达式的值等于case中的常量,则会执行其中包含的语句块 break用于跳出循环,如果不写,则直接执行下一个常量的语句块,不再去判断表达式的值是否等于下一个case的常量(case穿透) 最 ...
- PAT (Advanced Level) Practice 1003 Emergency 分数 25 迪杰斯特拉算法(dijkstra)
As an emergency rescue team leader of a city, you are given a special map of your country. The map s ...
- Libgdx游戏学习(1)——环境配置及demo运行
原文: Libgdx游戏学习(1)--环境配置及demo运行 - Stars-One的杂货小窝 Libgdx游戏是基于Java的一款游戏引擎,可以发布Android,桌面端,Html,IOS等游戏,出 ...
- HTML5中新增实用的标签
1:progress 进度条 <h3>progress</h3> <progress value="75" max="100"& ...
- 华为网关交换机开启DHCP server服务
华为网关交换机可以配置基于全局地址池的DHCP服务器,也可以配置基于接口地址池的DHCP服务器,本人比较倾向于配置基于接口地址池的DHCP服务器,因此在这里只介绍后者. 第一步:开启DHCP功能 [S ...