转载自:http://blog.csdn.net/qingyanyichen/article/details/73550924

本人下载编译安装了opencv2.4.9,oppencv2.4.10,opencv2.4.11,opencv3.0.0,opencv3.1.0,opencv3.2.0版本,总结anaconda下opencv安装经验如下。

1.编译好的opencv和自己编译安装opencv的区别

Ubuntu安装了anaconda以后,

$condainstall opencv

直接安装网上编译好的opencv,但是Ubuntu,python以及opencv不同版本之间使用都有差异,容易出问题;但是如果没出问题的话,这确实是最简单的安装方式.

$pipinstall opencv-python

或者$apt-get installpython-opencv

或者$conda install –c https://conda.binstar.org/menpoopencv

具有同样问题,所以有的人选择自己编译安装opencv.

比如直接

$conda installopencv

之后,调用cv2.destroyAllWindows()时有时会出现:

Thefunction is not implemented. Rebuild the library with Windows, GTK+ 2.x orCarbon support. If you are on Ubuntu or Debian, install libgtk2.0‑dev and pkg‑config, then re‑runcmake or configure script

这就是网上编译好的opencv包在编译的过程中设置的选项可能和你当前需求不一样,解决方法就是自己编译安装opencv

2. Ubuntu下anaconda卸载opencv

安装前首先把之前的opencv卸载掉,conda install装的就用condauninstall卸,其他的安装方式也按照对应方式卸载就可以了.

然后

$cd /usr/local/lib

$sudo rm–r opencv相关的包

$cd/usr/local/include

$sudo rm–r opencv相关的包

看看/usr/local/下有没有其他opencv,有的话一并删除

删除一系列包可以用rm –r opencv*,以opencv开头的包就都会被删掉

3.安装opencv依赖包

在安装opencv之前需要先处理好依赖包,有的教程会告诉你下面两条:

$sudoapt-get update

$sudoapt-get upgrade

这两条不是必要的,有的包升级完了又是bug,比如numpy包升到1.12就会出现floatX64的问题,所以不用这两条也没问题

下面这些依赖包还是要装的:

$   sudoapt-get install build-essential libgtk2.0-dev libjpeg-dev libtiff4-dev libjasper-dev libopenexr-dev cmake python-dev python-numpy python-tk libtbb-dev libeigen3-dev yasm libfaac-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev libx264-dev libqt4-dev libqt4-opengl-dev sphinx-common texlive-latex-extra libv4l-dev libdc1394-22-dev libavcodec-dev libavformat-dev libswscale-dev default-jdk ant libvtk5-qt4-dev

4.编译安装opencv

本人下载编译安装了opencv2.4.9,2.4.10,2.4.11,3.0.0,3.1.0,3.2.0,不同版本出的问题不一样,主要问题是cmake的差异,以及依赖包版本的差异

官网下载opencv源码

解压opencv源码

$cd 解压好的opencv文件夹

$mkdirbuild

$cdbuild

//万一编译失败,删掉build和/usr/local/下相应的opencv文件就行,不用把整个解压的opencv都删掉

//好看,才一行一行写的,没必要换行的

$cmake-D

CMAKE_BUILD_TYPE=Relese-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_OPENGL=ON-D

WITH_VTK=ON..

//opencv3.x版本这么写是没有问题的,2.x版本需要指定CUDA,而3.x版本指定CUDA的话编译会出问题.

//有的cmake里还有WITH_QT=ON,QT4和QT5版本问题在这里也经常出现,这条别写了

//看看你的ffmpeg是否是YES,有的ffmpeg包在2.x版本是NO的状态,make不下去的,先去装好ffmpeg

$make

//有的写成make j2,make j4,make j8等,就是为了加速

//make过程中,如果是3.x的版本,downloadthe file ippicv_linux_xxxxxxx.tgz会非常非常慢,还会出现校验码对不上的问题,自己下载ippicv_linux_xxxxxxx.tgz文件,拷到对应文件夹下,它正在下载那个删掉就可以了.

$sudomake install

将自己生成的动态链接库添加到系统能找到的路径:

$sudo gedit /etc/ld.so.conf.d/opencv.conf

在打开的写字板中填写/usr/local/lib

保存,并$sudo ldconfig

这个写法和下面的写法是等效的

$sudo -s

$echo"usr/local/lib" > /etc/ld.so.conf.d/opencv.conf

$sudoldconfig

设置路径:

$sudogedit /etc/bash.bashrc

文件末尾添加并保存:

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig

exportPKG_CONFIG_PATH

5.测试

$python

$import cv2

如果出现no module named cv2,那就把cv2.so拷到anaconda/lib/python2.7/site-packages下

$filename= "1.jpg"

$img =cv2.imread(filename)

$cv2.imshow("img",img)

$cv2.destroyAllWindows()

没问题就装好了

6.如果实在还没有解决

如果还有问题,那就不一定是opencv的问题了,重装anaconda试试吧.

参考:

http://www.samontab.com/web/2014/06/installing-opencv-2-4-9-in-ubuntu-14-04-lts/

anaconda2下面安装opencv2.4.13.4完成----解决默认安装的问题----Thefunction is not implemented. Rebuild the library with Windows, GTK+ 2.x orCarbon support. If you are on Ubuntu or Debian, install libgtk2.0‑dev and pkg的更多相关文章

  1. Ubuntu14.04 64位机上安装OpenCV2.4.13(CUDA8.0)版操作步骤

    Ubuntu14.04 64位机上安装CUDA8.0的操作步骤可以参考http://blog.csdn.net/fengbingchun/article/details/53840684,这里是在已经 ...

  2. Ubuntu16.04下安装OpenCV2.4.13

    软件版本 Ubuntu 16.04; OpenCV 2.4.13 安装步骤 1.首先安装一些编译工具 # 安装编译工具 sudo apt-get install build-essential # 安 ...

  3. ubuntu16.04安装opencv2.4.13

    1.更新 sudo apt-get update sudo apt-get upgrade 2.安装关联库 2.1 搭建C/C++编译环境 sudo apt-get install build-ess ...

  4. 【linux】linux下yum安装后Apache、php、mysql默认安装路径

    原文:http://blog.csdn.NET/u010175124/article/details/27322757apache:如果采用RPM包安装,安装路径应在 /etc/httpd目录下apa ...

  5. Ubuntu14.04安装opencv2.4.13

    本文参考相关链接:http://blog.csdn.net/honyniu/article/details/46390097   系 统:Ubuntu 14.04 x64 opencv版本:2.4.1 ...

  6. xlslib安装, aclocal-1.13: command not found, 安装升级autoconf-2.65.tar.gz, automake-1.13.tar.gz两个文件

    问题1: $ make CDPATH="${ZSH_VERSION+.}:" && cd . && aclocal-1.13 -I m4 /bin/ ...

  7. (原+转)ubuntu16中安装opencv2.4.11(2.4.13)

    转载请注明出处: http://www.cnblogs.com/darkknightzh/p/5638117.html 参考网址: http://www.cnblogs.com/jeakon/arch ...

  8. (原+转)ubuntu16中安装opencv2.4.11

    转载请注明出处: http://www.cnblogs.com/darkknightzh/p/5638117.html 参考网址: http://www.cnblogs.com/jeakon/arch ...

  9. Linux Ubuntu12.04下安装OpenCv2.4.10

    参考 http://blog.sina.com.cn/s/blog_53b0956801010lfu.html 捣鼓了一个晚上了,OpenCv还没装好,本来以为看个类似的比如Ubuntu安装OpenC ...

随机推荐

  1. linux之创建临时文件的方法

    有时候,我们需要创建文件临时存放一些输出的信息,创建文件时就可能出现文件名存在的问题.如何创建唯一的文件名,Linux为我们提供几个方案: 1.mktemp(强烈推荐) The  mktemp  ut ...

  2. VC6.0工程改名(转)

    只讨论对工程改名,其他文件和类的名字不改变,否则就很麻烦了.  操作步骤:   (1)删除 .dsw 文件.改好了会再自动生成的: (2)以写字板或记事本方式打开.dsp文件: (3)将其中所有的原工 ...

  3. Centos7 安装docker ce

    一. 安装docker 1.升级rpm包 yum -y update 2. 通过命令设置Docker CE 资源库: yum install -y yum-utils yum-config-manag ...

  4. springBoot 打成jar包

    1.一种方式通过cmd 窗口进行打包 配置maven 环境变量 进入到项目中  运行 mvn clean 然后运行mvn package 进行打包 2.通过idea 进行打包 (1)pom 中安装打包 ...

  5. 51Nod 1272最大距离 (树状数组维护前缀最小值)

    题目链接 最大距离 其实主流解法应该是单调栈……我用了树状数组. #include <bits/stdc++.h> using namespace std; #define rep(i, ...

  6. addEventListener与attachEvent

    一.attachEvent和addEventListener (一)addEventListener addEventListener() 方法用于向指定元素添加事件句柄.使用 removeEvent ...

  7. python 设计模式之命令模式

    命令模式介绍: 在面向对象编程中,命令模式是概括所有方法信息的设计模式. 此模式对象包涵方法名,及其相关参数值. 命令模式是一个分类的观察者设计模式,在命令模式下,对象被概括为一个命令表单,此表单包涵 ...

  8. luogu P2744 [USACO5.3]量取牛奶Milk Measuring

    题目描述 农夫约翰要量取 Q(1 <= Q <= 20,000)夸脱(夸脱,quarts,容积单位——译者注) 他的最好的牛奶,并把它装入一个大瓶子中卖出.消费者要多少,他就给多少,从不有 ...

  9. Akka之BackoffSupervisor

    一.背景 最近在开发一个项目,项目的各模块之间是使用akka grpc传输音频帧的,并且各模块中的actor分别都进行了persist.本周在开发过程中遇到了一个bug,就是音频帧在通行一段时间后,整 ...

  10. RTC实时时钟驱动

    RTC(Real-Time Clock)实时时钟为操作系统提供了一个可靠的时间,并且在断电的情况下,RTC实时时钟也可以通过电池供电,一直运行下去. RTC通过STRB/LDRB这两个ARM指令向CP ...