网站首页 > 技术文章 正文
一、安装
pip3 install numpy
pip3 install opencv-python
以上在ubunt上安装成功,但是在树莓派安装失败,在树莓派上Python2可以使用apt install python-opencv安装成功,Python3只能自己编译
二、树莓派在python3中安装opencv
参考网页:https://www.cnblogs.com/lynsyklate/p/7719500.html
获取源码
git clone https://github.com/opencv/opencv.git
git clone https://github.com/opencv/opencv_contrib.git
这里需要注意,opencv和contrib必须对应否则编译会失败,因此我此处clone了最新的
使用CMAKE从源码构建项目
创建临时目录用来存储我们编译后的opencv库
cd opencv
mkdir build
cd build
构建项目
cmake -D CMAKE_BUILD_TYPE=Release
-D CMAKE_INSTALL_PREFIX=/usr/local
-D OPENCV_EXTRA_MODULES=…/…/opencv_contrib/modules
PYTHON3_EXECUTABLE = /usr/bin/python3
PYTHON_INCLUDE_DIR = /usr/include/python3.5
PYTHON_INCLUDE_DIR2 = /usr/include/arm-linux-gnueabihf/python3.5m
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/
Python的libraries,numpy,packages Path都没有,说明Python环境不正常,不会生成Python的opencv库,到时候会报ImportError: No module named cv2的错误。
指定参数的时候有些没加-D。
没有启用BUILD_opencv_python3。
部分变量名错了
编译与安装
make -j4
sudo make install
//更新动态库
sudo ldconfig
注:报错ImportError: numpy.core.multiarray failed to import,import numpy也失败报错libblas.so.3: cannot open shared object file: No such file or directory。
解决:sudo apt-get install libatlas3-base
最终安装成功
三、在树莓派上安装c语言的opencv
sudo apt-get install libcv-dev
1
写一个小程序查看版本:
#include <stdio.h>
#include <opencv/cv.h>
int main(void){
printf("%s\n", CV_VERSION);
}
遇到一个大坑,opencv3.4.0源码报错。
需要修改代码:
vim opencv-3.4.0/modules/python/src2/cv2.cpp +885
将返回值强行转到char*
————————————————
版权声明:本文为CSDN博主「刘仕豪」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u011164819/article/details/100101966
猜你喜欢
- 2024-10-14 Ubuntu19.10系统的软件安装与卸载命令
- 2024-10-14 VMware下安装VMware tools,安装文件没有出现问题的解决
- 2024-10-14 大白话 linux 教程-09-安装和卸载软件包
- 2024-10-14 ubuntu下安装ssh(ubuntu下安装windows10)
- 2024-10-14 蓝易云 - Ubutun开机黑屏解决方法
- 2024-10-14 银河麒麟系统密码忘记了,修改密码和微信安装方法
- 2024-10-14 ubuntu离线apt-get更新源(ubuntu 离线升级)
- 2024-10-14 linux 系统 没有 ifconfig 命令,提示: ifconfig: command not found
- 2024-10-14 go get 命令一直下载不了源站的包解决方案
- 2024-10-14 Ubuntu Linux 如何使用apt-get安装Nginx、MySQL、Redis、PHP
- 02-21走进git时代, 你该怎么玩?_gits
- 02-21GitHub是什么?它可不仅仅是云中的Git版本控制器
- 02-21Git常用操作总结_git基本用法
- 02-21为什么互联网巨头使用Git而放弃SVN?(含核心命令与原理)
- 02-21Git 高级用法,喜欢就拿去用_git基本用法
- 02-21Git常用命令和Git团队使用规范指南
- 02-21总结几个常用的Git命令的使用方法
- 02-21Git工作原理和常用指令_git原理详解
- 最近发表
- 标签列表
-
- cmd/c (57)
- c++中::是什么意思 (57)
- sqlset (59)
- ps可以打开pdf格式吗 (58)
- phprequire_once (61)
- localstorage.removeitem (74)
- routermode (59)
- vector线程安全吗 (70)
- & (66)
- java (73)
- org.redisson (64)
- log.warn (60)
- cannotinstantiatethetype (62)
- js数组插入 (83)
- resttemplateokhttp (59)
- gormwherein (64)
- linux删除一个文件夹 (65)
- mac安装java (72)
- reader.onload (61)
- outofmemoryerror是什么意思 (64)
- flask文件上传 (63)
- eacces (67)
- 查看mysql是否启动 (70)
- java是值传递还是引用传递 (58)
- 无效的列索引 (74)