在ubuntu16.04上使用opencv3时, 发现视频与imshow函数无法使用,经查资料发现 安装opencv时采用的简易的安装方法,没有编译opencv的源码。

因此会出现以上问题。

下载源码进行编译不断报错

最后卸载了anaconda后,编译opencv成功。

卸载anaconda: 先删除anaconda的整个文件夹,再删除path。(sudo nano ~/.bashrc)

具体编译方法见

http://www.cnblogs.com/farewell-farewell/p/6125761.html

其中cmake 为:

cmake     \
-D CMAKE_BUILD_TYPE=DEBUG -D CMAKE_INSTALL_PREFIX=/usr/local/opencv2 \
-D WITH_CUDA=ON -D WITH_CUBLAS=ON -D CUDA_FAST_MATH=ON \
-D WITH_CUFFT=ON -D WITH_NVCUVID=ON -D WITH_V4L=ON \
-D WITH_LIBV4L=ON -D WITH_OPENGL=ON -D WITH_FFMPEG=ON \
-D INSTALL_C_EXAMPLES=ON -D BUILD_EXAMPLES=ON -D BUILD_PYTHON_SUPPORT=ON ..

附:卸载并重新安装opencv的方法 http://blog.csdn.net/sinat_21258931/article/details/61195530

编译完后的path设置和测试可见  http://blog.csdn.net/obsession2015/article/details/56665884

编译完后运行出错:

/usr/bin/ld: 找不到 -lImath
/usr/bin/ld: 找不到 -lIlmImf
/usr/bin/ld: 找不到 -lIex
/usr/bin/ld: 找不到 -lHalf
/usr/bin/ld: 找不到 -lIlmThread

经查证,这几个都是3rdparty/openexr中的库,因此 猜想在cmake中应加上编译该库应该就可以了。

(cmake编译时各个参数见 http://m.blog.csdn.net/skykingf/article/details/78036738)

重新尝试,cmake变为:

cmake     \
-D CMAKE_BUILD_TYPE=DEBUG -D CMAKE_INSTALL_PREFIX=/usr/local/opencv2 \
-D WITH_CUDA=ON -D WITH_CUBLAS=ON -D CUDA_FAST_MATH=ON \
-D WITH_CUFFT=ON -D WITH_NVCUVID=ON -D WITH_V4L=ON \
-D WITH_LIBV4L=ON -D WITH_OPENGL=ON -D WITH_FFMPEG=ON \
-D INSTALL_C_EXAMPLES=ON -D BUILD_EXAMPLES=ON -D BUILD_PYTHON_SUPPORT=ON -D BUILD_OPENEXR=ON ..

最后,果然解决了以上问题,但是在测试cmake . 时出现如下错误:

CMake Error at CMakeLists.txt: (find_package):
By not providing "FindOpenCV.cmake" in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by "OpenCV", but
CMake did not find one. Could not find a package configuration file provided by "OpenCV" with any
of the following names: OpenCVConfig.cmake
opencv-config.cmake Add the installation prefix of "OpenCV" to CMAKE_PREFIX_PATH or set
"OpenCV_DIR" to a directory containing one of the above files. If "OpenCV"
provides a separate development package or SDK, be sure it has been
installed. -- Configuring incomplete, errors occurred!
See also "/home/godzilla/opencv-3.2.0/samples/cpp/example_cmake/CMakeFiles/CMakeOutput.log".

解决方法为:在samples/cpp/example_cmake/中的CMakeLists.txt中增加如下语句:

set(OpenCV_DIR /home/godzilla/opencv-3.2.0/build)
#后面路径为 opencv安装路径下的build

然后,运行成功!终于!!!(耗了2天了,期间卸载重装无数回)

最后就可以将opencv添加到python:在build下在lib目录中找到cv2.so文件,复制到python的site-packages文件夹中即可

sudo cp cv2.so /usr/local/lib/python2.7/site-packages/

然后测试,仍无法打开摄像头,与之前的情况相同,再次查询原因,发现如下解决方法:http://blog.csdn.net/chenhezhuyan/article/details/23384637

于是又卸载了opencv,再来一次!!!

卸载后,先安装如下库(以下为我需要安装的,完整版请看原文):

sudo apt-get install libgstreamer0.10-0-dbg libgstreamer0.10-0 libgstreamer0.10-dev

sudo apt-get install libxine2-ffmpeg libxine2-bin libxine2

sudo apt-get install libunicap2 libunicap2-dev

sudo apt-get install libdc1394-utils

sudo apt-get install swig 

装完后将cv2移至python文件夹后,重启电脑后。发现python import cv2报错了!!!!!崩溃。。。。

决定先安装anaconda吧。

bash Anaconda2-4.0.-Linux-x86.sh

添加path后记得

source .bashrc

ubuntu anaconda opencv问题的更多相关文章

  1. ubuntu 安装 OpenCv 及其Qt的开发环境配置

    ubuntu安装opencv (1)安装编译opencv的环境 sudo apt-get -y install build-essential cmake pkg-config (2)安装Image ...

  2. 开发环境配置--Ubuntu+Qt4+OpenCV(三)

    同系列文章 1. 开发环境配置--Ubuntu+Qt4+OpenCV(一) 2. 开发环境配置--Ubuntu+Qt4+OpenCV(二) 3. 开发环境配置--Ubuntu+Qt4+OpenCV(三 ...

  3. 开发环境配置--Ubuntu+Qt4+OpenCV(一)

    同系列的文章 1. 开发环境配置--Ubuntu+Qt4+OpenCV(一) 2. 开发环境配置--Ubuntu+Qt4+OpenCV(二) 3. 开发环境配置--Ubuntu+Qt4+OpenCV( ...

  4. 开发环境配置--Ubuntu+Qt4+OpenCV(二)

    同系列文章 1. 开发环境配置--Ubuntu+Qt4+OpenCV(一) 2. 开发环境配置--Ubuntu+Qt4+OpenCV(二) 3. 开发环境配置--Ubuntu+Qt4+OpenCV(三 ...

  5. Ubuntu下OpenCV不能被某个python版本识别

    Ubuntu下OpenCV不能被某个python版本识别 Solution: 可以进入相应版本的python,查看该python的path: python import sys print(sys.p ...

  6. [学习OpenCV攻略][002][Ubuntu下OpenCV安装]

    配置环境 操作系统 Ubuntu 12.04 OpenCV版本 opencv-1.0.0 学习书籍 <学习OpenCV> Liunx软件安装方法主要有3种: 1.编译安装,也就是通过编译源 ...

  7. Ubuntu下opencv的安装及IDEA开发配置

    Ubuntu下opencv的安装及IDEA开发配置 环境配置  这篇博客主要介绍Ubuntu下opencv的安装编译,以及IDEA对opencv进行Java开发的环境配置 安装opencv 首先安装o ...

  8. Windows下的Anaconda+OpenCV的环境配置

    Windows下的Anaconda+OpenCV的环境配置

  9. (转载)ubuntu卸载opencv并重装opencv3.0.0

    ubuntu卸载opencv并重装opencv3.0.0 一. 卸载opencv2.4.9: Going to the "build" folder directory of op ...

随机推荐

  1. 匈牙利算法--java

    先上例题 杭电acm 2063 :http://acm.hdu.edu.cn/showproblem.php?pid=2063 bool 寻找从k出发的对应项出的可增广路 { while (从邻接表中 ...

  2. Hibernate(11)_基于外键的双向1对1

    一.基于外键的双向1对1 对于基于外键的1-1关联,其外键可以存放在任意一边,在需要存放外键一端,增加many-to-one元素.为many-to-one元素增加unique="true&q ...

  3. poj3276 Face The Right Way(反转问题,好题)

    https://vjudge.net/problem/POJ-3276 首先意识到,对一个区间进行两次及以上的反转是没有意义的,而且反转次序不影响最终结果. 有点像二分搜索时用的逐个试的方法,每次翻的 ...

  4. vue 父子组件的方法调用

    $emit 子组件触发父组件的方法: <!-- 子组件 --> <template> <div id="child"> <button @ ...

  5. Eclipse中Project的属性Deployment Assembly(部署程序集)消失了,不存在了,去哪儿了

    1. 该项目不是web项目,所以不存在Deployment Assembly 属性.在Eclipse中,怎样将一个非web project变成一个web project? 1)右键项目,选择Proje ...

  6. .NET 同步与异步 之 Mutex (十二)

    本随笔续接:.NET 同步与异步 之 线程安全的集合 (十一) 本随笔 及 接下来的两篇随笔,将介绍 .NET 同步与异步系列 的最后一个大块知识点:WaitHandle家族. 抽象基类:WaitHa ...

  7. 使用phpstorm进行PHP断点调试

    PHP开发中都说一个会偷懒的程序员才是合格的程序员,在PHP开发中调试是必须要有的,可能要重复很多次的去调试,一次又一次,今天我们就来教教大家如何偷懒的,那么就来讲讲使用phpstorm进行偷懒吧! ...

  8. 转:关于S参数的一些理解

    关于S参数的一些理解 http://rf.eefocus.com/module/forum/thread-596241-1-1.html 台湾工程师图文独特讲解:S参数http://rf.eefocu ...

  9. [C++]Qt程式异常崩溃处理技巧(Win)

    文章转载来自     http://www.cnblogs.com/lcchuguo/p/5177715.html     作者 lcchuguo https://blog.csdn.net/baid ...

  10. 此请求已被阻止,因为当用在 GET 请求中时,会将敏感信息透漏给第三方网站。若要允许 GET 请求,请将 JsonRequestBehavior 设置为 AllowGet。

    1.问题描述 mvc从一个路径获取所有的图片信息,ajax方法如下: function getimages(day) { var year = $("#selYear").val( ...