这里我介绍2种方法

(1)利用别人写好的脚本编译,相对来说省力一点 

上Github下载别人写好的脚本文件,网址 
https://github.com/jayrambhia/Install-OpenCV 

解压缩后,进入Ubuntu/2.4,有不同版本的OpenCV脚本文件。这里我们选择opencv2.4.10(据说opencv2.4.9会编译出错)。

修改opencv2_4_10.sh文件 

(这一步很重要,不改虽然opencv能够编译安装成功,但最后运行doppia时,还是会报错) 

还记得我们之前在《doppia编译之一:前言及安装CUDA》执行的./deviceQuery后得到的显卡信息吗?这个时候我们就能用到它啦!其中有一项参数是这样的

CUDA Capability Major/Minor version number:    3.0
  • 1
  • 1

这里我们修改opencv2_4_10.sh就要根据这个参数。把脚本文件中

cmake -D CUDA_ARCH_BIN=3.2 -D CUDA_ARCH_PTX=3.2
  • 1
  • 1

改成和你自己显卡相匹配的值,比如这里,我们把它改成

cmake -D CUDA_ARCH_BIN=3.0 -D CUDA_ARCH_PTX=3.0
  • 1
  • 1

这里我的理解是,你编译opencv时设置CUDA的运行能力要和CUDA的实际运行能力一致,不然在运行程序时,就会执行出错。(当然这只是我自己的理解,如果有错误,请指正。)

编译安装opencv 

在修改好opencv_2_4_10脚本后,接下来的事情就简单了,你只要执行

sudo ./opencv2_4_10.sh
  • 1
  • 1

程序会自动帮你安装依赖库及opencv,你要做的就是耐心等待。 

(这里它会自动下载opencv,当然有些时候资源不好,程序自动下载会比较慢,这时你可以根据opencv2_4_10.sh提供的下载地址自己用迅雷下好,毕竟迅雷才是下载神器嘛!下载好之后,在opencv2_4_10.sh同目录下创建文件夹OpenCV,并将下载好的zip文件放入OpenCV,这里要注意我们下载的zip的文件名中”opencv-2.4.10.zip”均为小写,而在opencv2_4_10.sh,它检查opencv是否下载的字符名为“OpenCV-2.4.10.zip”,所以我们需要将zip文件名改为“OpenCV-2.4.10.zip”)

(2)第二种方法相对复杂一点,要自己编译opencv

安装编译器及编辑器 

在编译opencv之前,你要确保你的系统里有gcc、g++、eclipse、eclipse cdt以及cmake,cmake-gui。可以通过xxx –version 查询软件版本,如果没有,可以根据提示安装,或者直接执行以下命令:

sudo apt-get install xxx # xxx代表以上软件安装包
  • 1
  • 1

安装相应软件。在装好之后,可以运行eclipse自带的helloworld程序验证安装是否成功。

cmake编译opencv 

解压opencv下载包后,进入opencv/sources目录,运行cmake-gui,选择opencv/sources为输入路径,输出路径的话你可以自己新建一个文件夹,或者默认用opencv/,点击“configure”,弹出对话框中选择

Eclipse CDT4-Unix MakeFiles
  • 1
  • 1

作为其默认编译器,点击“Finish”,开始编译。编译完成后,在Name组合框下,检查“WITHCUDA”是否被勾选。(一般它会自动检测你的机器是否安装CUDA,如果没被勾选,要确认CUDA是否安装成功,确认后,勾选“WITHCUDA”)如果你想运行opencv示例来验证是否安装成功的话,你还可以勾选“opencv Samples”。最后,点击“generate”,成功后,cmkae编译完成。

安装依赖库 

在安装opencv之前,我们需要安装一些opencv的依赖库。

sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg62-dev libswscale-dev libjasper-dev
  • 1
  • 1

安装oepncv 

安装好依赖库之后,我们就可以开始安装opencv啦。 

在cmake编译的输出路径下,终端输入

sudo make #(这一步opencv2.4.9可能会出错,建议使用opencv2.4.10)
  • 1
  • 1

创建opencv。最后就是安装opencv,输入命令

sudo make install
  • 1
  • 1

到这里,我们的opencv编译安装就算成功啦!当然你可以编译opencv的samples验证一下安装正确与否。(不过一般sudo make 能达到100%,出问题的可能性就不大啦!)

引用博客: 
https://gist.github.com/bearpaw/c38ef18ec45ba6548ec0 
http://www.cnblogs.com/jeakon/archive/2013/05/08/3066469.html

doppia及作者相关介绍链接: 
http://blog.csdn.net/xizero00/article/details/43227019 
https://bitbucket.org/rodrigob/doppia

【视频开发】【计算机视觉】doppia编译之三:编译安装opencv库的更多相关文章

  1. python安装opencv库

    1.打开anaconda prompt(安装anaconda会默认安装),键入 pip install opencv-python,如下: 2.安装过程如下所示: 3 测试是否安装成功 上述就说明安装 ...

  2. Python如何安装OpenCV库

    转载:https://blog.csdn.net/weixin_35684521/article/details/81953047 OpenCV的概念可百度,在此不再赘述.https://baike. ...

  3. 【视频开发】【计算机视觉】doppia编译之四:安装其他库、编译和运行doppia

    (与本节内容无关///////////////////////////保存图片参数为--gui.save_all_screenshots true////////////////////)  在我们安 ...

  4. 编译Android 必须安装的库

    要安装的库: 正在卸载 build-essential ...正在卸载 g++-multilib ...正在卸载 g++ ...正在卸载 gcc-multilib ...正在卸载 gcc ...正在卸 ...

  5. 树莓派通过apt方式安装opencv库

    1.安装opencv     开始之前进行必要的更新工作. sudo apt-get update     安装opencv. sudo apt-get install libcv-dev     安 ...

  6. ubuontu16.04安装Opencv库引发的find_package()错误信息处理及其简单使用

    在安装完Opencv库之后,打算测试一下Opencv库是否成功安装.下面是用的例子对应的.cpp代码以及对应的CMakeLists.txt代码: .cpp文件: #include <stdio. ...

  7. python环境下安装opencv库的方法

    注意:安装opencv之前需要先安装numpy,matplotlib等 一.安装方法 方法一.在线安装 1.先安装opencv-python pip install opencv-python --u ...

  8. ubuntu下安装opencv库+Python2.7环境安装及开发摄像头拍照应用

    好久没有更新了,今天更一篇最近遇到的问题,及解决办法,后面博客得继续写起来 安装 #使用Python下的lib库直接进行安装 apt-get install python-opencv 测试 #使用如 ...

  9. 如何生成能在没有安装opencv库及vs2010环境的电脑上运行的exe文件

    项目基本算法已经完成,甲方需要一个可以运行的demo.目前,程序能在自己的电脑上正常运行.移植到其他win7系统上,运行失败. 寻找各种解决办法,baidu找到两个办法: 1.使用静态链接的方法,这种 ...

随机推荐

  1. 异常错误:在可以调用 OLE 之前,必须将当前线程设置为单线程单元(STA)模式

    最近做一个蛋疼的东西就是C#调用windows API 来操作一个摄像头,自动处理一些东西.要用到剪切板复制 粘贴功能,即 Clipboard.SetDataObject(filedic, true) ...

  2. *P2398 GCD SUM[数论]

    题目描述 for i=1 to n for j=1 to n sum+=gcd(i,j) 解析 给出n求sum. gcd(x,y)表示x,y的最大公约数. 直接枚举复杂度为\(O(n^2)\),显然无 ...

  3. 实验八 《Coderxiaoban团队》团队作业4:基于原型的团队项目需求调研与分析

    实验八 <Coderxiaoban团队>团队作业4:基于原型的团队项目需求调研与分析 项目 内容 这个作业属于哪个课程 任课教师博客主页链接 这个作业的要求在哪里 实验八 团队作业4:基于 ...

  4. JS获取访客IP进行自动跳转

    因业务需要进行地区判断跳转指定站点,下面是我个人实现的办法,分享给大家,仅供参考,切勿做非法用途 第一步,获取IP并判断归属地 直接使用搜狐的IP库查询接口 <script type=" ...

  5. Incorrect integer value: '' for column 'id' at row 1 错误解决办法

    最近一个项目,在本地php环境里一切正常,ftp上传到虚拟空间后,当执行更新操作(我的目的是为了设置id为空)set id=‘’时提示: Incorrect integer value: '' for ...

  6. js中四舍五入保留两位效数,js中将Number转换成字符类型

    今天在写代码的时候遇到了点问题,特意记下,以免忘记!四舍五入方法: // num为传入的值,n为保留的小数位 function fomatFloat(num,n){ var f = parseFloa ...

  7. opencv图像处理之gamma变换

    import cv2 import numpy as np img=cv2.imread('4.jpg') def adjust_gamma(image, gamma=1.0): invGamma = ...

  8. 线性回归和Ridge回归

    网址:https://www.cnblogs.com/pinard/p/6023000.html 线性回归和交叉验证 import matplotlib.pyplot as plt import nu ...

  9. [CSP-S 2019]格雷码

    [CSP-S 2019]格雷码 题目大意: 格雷码(Gray Code)是一种特殊的 \(n\) 位二进制串排列法,它要求相邻的两个二进制串间恰好有一位不同,特别地,第一个串与最后一个串也算作相邻. ...

  10. Cogs 739. [网络流24题] 运输问题(费用流)

    [网络流24题] 运输问题 ★★ 输入文件:tran.in 输出文件:tran.out 简单对比 时间限制:1 s 内存限制:128 MB «问题描述: «编程任务: 对于给定的m 个仓库和n 个零售 ...