OpenCV(Open Source Computer Vision Library) 是一个基于BSD许可(开源)发行的跨平台计算机视觉库,它具有C ++,C,Python和Java接口,可以运行在Linux、Windows、Mac OS和Android操作系统上。OpenCV的设计是为了提高计算效率,并将重点放在实时应用程序上, 用优化的C / C ++编写,库可以利用多核处理,实现了图像处理和计算机视觉方面的很多通用算法。

#-----------------------------------------------------------------------------------------------------------

0x00 前言

OpenCV在linux的安装方法可以按照 https://github.com/jayrambhia/Install-OpenCV 来安装。

但有时候因为网速或者别的原因,总之我就觉得里面好繁琐,我从上述项目里提炼出关键的语句,运行即可安装成功。

本次只制作ubuntu下的安装方法,其他系统的安装你们可以参照上述项目。

0x01 准备工作

下载opencv源码包(现在最新版本为3.3.1):

https://sourceforge.net/projects/opencvlibrary/files/opencv-unix/3.3.1/opencv-3.3.1.zip/download

更新下ubuntu:

#change to root
sudo -s
#update
apt-get update

准备下文件dependencies.sh

#!/bin/bash

echo "--- Removing any pre-installed ffmpeg and x264"
sudo apt-get -qq remove ffmpeg x264 libx264-dev function install_dependency {
echo "--- Installing dependency: $1"
sudo apt-get -y install $
} install_dependency libopencv-dev
install_dependency build-essential
install_dependency checkinstall
install_dependency cmake
install_dependency pkg-config
install_dependency yasm
install_dependency libtiff5-dev
install_dependency libjpeg-dev
install_dependency libjasper-dev
install_dependency libavcodec-dev
install_dependency libavformat-dev
install_dependency libswscale-dev
install_dependency libdc1394--dev
install_dependency libxine2-dev
install_dependency libgstreamer0.-dev
install_dependency libgstreamer-plugins-base0.-dev
install_dependency libv4l-dev
install_dependency python-dev
install_dependency python-numpy
install_dependency libtbb-dev
install_dependency libqt5x11extras5
install_dependency libqt5opengl5
install_dependency libqt5opengl5-dev
install_dependency libgtk2.-dev
install_dependency libfaac-dev
install_dependency libmp3lame-dev
install_dependency libopencore-amrnb-dev
install_dependency libopencore-amrwb-dev
install_dependency libtheora-dev
install_dependency libvorbis-dev
install_dependency libxvidcore-dev
install_dependency x264
install_dependency v4l-utils
#install_dependency ffmpeg
install_dependency unzip

准备下install.sh

#!/bin/bash

version=3.3.
downloadfile=opencv-${version}.zip
dldir=OpenCV source dependencies.sh mkdir -p $dldir
mv $downloadfile $dldir/$downloadfile
cd $dldir
unzip $downloadfile
cd opencv-$version
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON -D WITH_QT=ON -D WITH_OPENGL=ON ..
make -j
sudo make install
sudo sh -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'
sudo ldconfig
echo "OpenCV" $version "ready to be used"

0x02 安装OpenCV

只要opencv-3.3.1.zip、dependencies.sh、install.sh在同一个文件夹下,就可以进行安装:

chmod +x dependencies.sh
chmod +x install.sh
source install.sh

这安装过程会相对漫长。

0x03 编译OpenCV程序

例如要编译的文件为pcat.cpp

g++ -ggdb `pkg-config –-cflags opencv` `pkg-config –-libs opencv` pcat.cpp –o pcat

0x04 windows安装numpy、cv2等python2.7模块

对于windows,我暂时只需要cv2这个python2.7模块,而这个cv2模块依赖numpy模块

numpy的安装

https://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy

现在numpy最新版本是1.13.3,python的32位版本就下载numpy-1.13.3+mkl-cp27-cp27m-win32.whl,64位版本就下载numpy-1.13.3+mkl-cp27-cp27m-win_amd64.whl

pip install numpy-xxx.whl

cv2的安装

https://opencv.org/releases.html

现在OpenCV最新的版本是3.3.1,下载 https://sourceforge.net/projects/opencvlibrary/files/opencv-win/3.3.1/opencv-3.3.1-vc14.exe/download

这个opencv-3.3.1-vc14.exe点击后会自动解压,包含sources和build文件夹,\opencv\sources\samples可供学习。

打开\opencv\build\python\2.7,有x86和x64两个版本,关键看你的python是什么版本,复制相对应版本的文件夹下面的cv2.pyd

复制到python2.7的安装目录\Lib\site-packages里面即可

之后可以打开python验证是否成功

import cv2

linux安装OpenCV以及windows安装numpy、cv2等python2.7模块的更多相关文章

  1. Pycharm安装opencv与 无法安装PIL以及安装Pillow之后依然报错的解决办法

    Pycharm 安装opencv pycharm里自带了很方便的安装第三方库的方法,不需要自己去下载opencv包再pip install 在pycharm的File/Settings/Project ...

  2. git安装教程(windows安装)

    git下载地址 https://git-scm.com/download/win 选择安装的组件,推荐全选 Additional icons 附加图标 ​ On the Desktop 在桌面上 Wi ...

  3. 【安装mysql】windows安装压缩版mysql5.7.15

      160915.1459 综述 中午安装成功,但是启动失败,很可能是压缩包有问题(从别人拷的),解决了近一个小时,没搞定,于是换条方案,重新去官网下载压缩包,这次看准了windows架构,且64-b ...

  4. Windows WSL 安装OpenCV

    安装WSL 启动WSL功能 首先启动WSL功能,下面提供两个办法 Powershell --> 管理员权限 --> 运行 Enable-WindowsOptionalFeature -On ...

  5. 【opencv基础】linux系统opencv以及opencv_contrib的安装与使用

    前言 本文主要介绍如何在linux系统安装使用opencv. 具体步骤可参考opencv官网here. 步骤 编译源码之前需要安装相关依赖库: 1.下载源码: 2.解压源码: 3.配置cmake: 注 ...

  6. Linux及Windows安装Redis(详细)

    Linux及Windows安装Redis 1.Windows安装教程 1.1下载 https://github.com/MSOpenTech/redis/releases 进入github里下载red ...

  7. OpenCV 学习笔记 01 安装OpenCV及相关依赖库

    本次学习是基于Window10进行的.语言为python3. 1 与opencv相关的库简介 1.1 numpy numpy 是 OpenCV 绑定 python 时所依赖的库,此意味着numpy在安 ...

  8. <实训|第二天>掌握linux6.7中安装vmware、vmware安装linux发行版本以及遇到的问题最后libreoffice的安装

    期待已久的linux运维.oracle"培训班"终于开班了,我从已经开始长期四个半月的linux运维.oracle培训,每天白天我会好好学习,晚上回来我会努力更新教程,包括今天学到 ...

  9. Ubuntu 16.04 安装opencv的各种方法(含opencv contrib扩展包安装方法)

    Ubuntu 16.04 安装opencv的各种方法(含opencv contrib扩展包安装方法) https://blog.csdn.net/ksws0292756/article/details ...

随机推荐

  1. javascript入门篇(一)

    未定义:undefined 布尔类型值:true,false 判断类型:typeof() 绝对值:Math.abs(-1) 声明常量:const   声明变量:var 小数两值互换如果出现问题,可以通 ...

  2. Java递归读取文件路径下所有文件名称并保存为Txt文档

    本文用递归的方法实现读取一个路径下面的所有文件并将文件名称保存到Txt文件中,亲测可用. 递归读取文件路径下的所有文件: /** * 递归读取文件路径下的所有文件 * * @param path * ...

  3. 如何解决svn清理失败 不能更新 cleanup失败 cleanup乱码 更新乱码 svn更新提示清理 清理乱码不能清理 svn故障修复SVN cleanup 陷入死循环 svn cleanup时遇到错误怎么办

    平时使用svn的过程中,有的时候由于自己操作故障或者系统原因,导致svn不能更新,提示cleanup也不能成功,陷入了死循环 原因是;svn的数据库队列原因 1,下载sqlite3.exe,googl ...

  4. React Fiber源码分析 (介绍)

    写了分析源码的文章后, 总觉得缺少了什么, 在这里补一个整体的总结,输出个人的理解~ 文章的系列标题为Fiber源码分析, 那么什么是Fiber,官方给出的解释是: React Fiber是对核心算法 ...

  5. 经典JS的HTML转义与反转义字符

    //HTML转义 function HTMLEncode(html) { var temp = document.createElement ("div"); (temp.text ...

  6. Tomcat配置文件Executor元素属性介绍

    该元素可用于Tomcat 6.0.11以及更高版本. 允许您为一个Service的所有Connector配置一个共享线程池.在运行多个Connector的状况下,这样处理非常有用,而且每个Connec ...

  7. WPF 中 DispatcherTimer 计时器

    在 WPF 中涉及到界面操作的计时器时,一定要使用 DispatcherTime,DispatcherTimer是为 WPF 专门设计的,不然的话会提示界面资源被其他线程所拥有而无法更新界面.Disp ...

  8. 记一次servlet项目启动

    前言 tomcat 和 jetty 都属于 web 容器. mac安装tomcat brew install tomcat 安装之后,输入 catalina -h,可以看到各种命令,如run.star ...

  9. Java开发笔记(六十四)静态方法引用和实例方法引用

    前面介绍了方法引用的概念及其业务场景,虽然在所列举的案例之中方法引用确实好用,但是显而易见这些案例的适用场合非常狭窄,因为被引用的方法必须属于外层匿名方法(即Lambda表达式)的数据类型,像isEm ...

  10. 浏览器登录Dynamics 365 CE没毛病,程序连接却报错。

    摘要: 微软动态CRM专家罗勇 ,回复308或者20190308可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me!我的网站是 www.luoyong.me . 今天我做实验 ...