Linux 下编译安装OpenCV

简介:
+关注继续查看

Cmake的安装

OpenCV 2.2以后版本需要使用Cmake生成makefile文件,因此需要先安装cmake。

ubuntu下安装cmake比较简单,

apt-get install cmake

如果觉得自带的版本不符合要求,可以下载安装包。

下载最新版的安装包:

http://www.cmake.org/cmake/resources/software.html

这里下载已经编译好的,这样只需要解压至需要的目录下即可使用:

tar zxvf cmake-2.8.10.2-Linux-i386.tar.gz –C /usr/local/

设置环境变量:

sudo gedit /home/emouse/.bashrc

在打开的文件后添加:

export PATH=$PATH:/usr/local/cmake-2.8.10.2-Linux-i386/bin

查看版本,测试是否安装成功:

root@emouse:/home# cmake --version 
cmake version 2.8.10.2

Ubuntu 下安装 OpenCV

软件环境:

Ubuntu 12.04

OpenCV 2.4.3

Cmake 2.8.10.1

gcc 4.6.3 (系统默认)

 

1、先安装 libgtk2.0-dev 和 pkg-config,,否则后期编译运行程序会出现类似如下的问题:

OpenCV Error: Unspecified error (The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Carbon support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script) in cvNamedWindow, file /usr/local/opencv/OpenCV-2.0.0/src/highgui/window.cpp, line 100 
terminate called after throwing an instance of 'cv::Exception'

通过网络获取安装:

# apt-get install libgtk2.0-dev
# apt-get install pkg-config

 

2、下载OpenCV ,文件名:OpenCV-2.4.3.tar.bz2,下载地址:

http://www.opencv.org.cn/index.php/Download

解压:

#tar jxvf OpenCV-2.4.3.tar.bz2

得到文件夹 OpenCV-2.4.3

这里新建一个文件夹OpenCV-x86作为PC编译目录。

 

3、#cmake-gui 打开cmake的gui界面,开始进行配置。

cmake主要用于进行一些配置设定,从而生成用于编译安装的makefile文件,通过界面进行参数的配置和设定,非常直观、方便。在配置中指定源码和编译目录以及生成方式。

按照下图的步骤进行配置:

image


点击Finish后cmake即载入默认配置,如下图所示:

image

如图所示,窗口的中间部分即配置列表,这里和使用cmake命令直接生成makefile文件一致的,如

$ cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/home/OpenCV

只是这里通过图形界面的方式来进行配置,更加直观方便。

这里指对一个地方进行修改,CMAKE_BUILD_TYPE 值输入RELEASE,其他保持不变,图中蓝色虚线部分显示了默认的安装目录,生成makefile文件最后执行 make install时就会安装到这个目录,这里可以根据个人需求更改。在这里的配置中我勾选了WITH_QT 去掉了WITH_TIFF,其他更多的配置也不清楚,OpenCV中文网站也没找到系统的说明,这里暂时不深究,点击Generate生成配置文件。

进入OpenCV-x86目录可以查看Makefile文件,可以留意文件的生成时间是否和刚才的生成时间一致。

4、接下来在OpenCV-x86 分别执行make和make install即可完成编译安装。

5、安装完成后需要对系统相关环境变量进行配置:

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

将以下内容添加到最后:

/usr/local/lib

接下来配置库:

sudo ldconfig

更改环境变量:

sudo gedit /etc/bash.bashrc

在文件后添加:

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig 
export PKG_CONFIG_PATH
保存退出,在运行下面的例程之前,需要重新开启终端来使配置生效。

例程测试

拷贝步骤2中解压的的/OpenCV-2.4.3/samples/c 将c文件夹拷贝出来,下面运行一下这里面的一个例程,初步体验下OpenCV。拷贝完成后进入这个文件夹:

chmod +x build_all.sh

./build_all.sh

这样就对例程目录下的源文件进行了编译,这里运行一个人脸检测的程序,下面摘录自本文参考资料3。

Some of the training data for object detection is stored in /usr/local/share/opencv/haarcascades. You need to tell OpenCV which training data to use. I will use one of the frontal face detectors available. Let’s find a face:

终端中运行:

./facedetect --cascade="/usr/local/share/OpenCV/haarcascades/haarcascade_frontalface_alt.xml" --scale=1.5 lena.jpg

得到的结果如下图:

imageimage

本文转自emouse博客园博客,原文链接:http://www.cnblogs.com/emouse/archive/2013/02/22/2922940.html,如需转载请自行联系原作者

相关文章
|
15天前
|
算法 自动驾驶 Linux
嵌入式Linux系列第17篇:移植OpenCV
嵌入式Linux系列第17篇:移植OpenCV
|
7月前
|
Linux 计算机视觉 Python
在Linux系统上安装OpenCV
在Linux系统上安装OpenCV
455 0
|
8月前
|
Java Linux 计算机视觉
全网首发:Java在LINUX上系统上加载OpenCV so库的范例代码
全网首发:Java在LINUX上系统上加载OpenCV so库的范例代码
234 0
|
8月前
|
Java Linux 计算机视觉
全网首发:Linux自带opencv库的JAVA调用失败/java.lang.UnsatisfiedLinkError:libopencv_ml.so.405: 无法打开共享对象文件
全网首发:Linux自带opencv库的JAVA调用失败/java.lang.UnsatisfiedLinkError:libopencv_ml.so.405: 无法打开共享对象文件
257 0
|
8月前
|
Linux C语言 计算机视觉
OpenIN2 Linux 编译OpenCV 报错undefined reference to `xxx@xxx‘
OpenIN2 Linux 编译OpenCV 报错undefined reference to `xxx@xxx‘
118 0
OpenIN2 Linux 编译OpenCV 报错undefined reference to `xxx@xxx‘
|
8月前
|
Java Linux 计算机视觉
全网首发:LINUX OpenCV编译java/jar版本注意事项
全网首发:LINUX OpenCV编译java/jar版本注意事项
211 0
|
8月前
|
Linux 计算机视觉
LINUX编译opencv
LINUX编译opencv
45 0
|
Linux 计算机视觉
Linux下OpenCV出现错误:ASSERT false in file qasciikey.cpp, line 501
Linux下OpenCV出现错误:ASSERT false in file qasciikey.cpp, line 501
90 2
|
Java Linux 计算机视觉
全网首发:Linux自带opencv库的JAVA调用失败/java.lang.UnsatisfiedLinkError:libopencv_ml.so.405: 无法打开共享对象文件
全网首发:Linux自带opencv库的JAVA调用失败/java.lang.UnsatisfiedLinkError:libopencv_ml.so.405: 无法打开共享对象文件
287 0
|
Ubuntu Linux 计算机视觉
Linux下QT配合OpenCV完成图像处理(实现基本的人脸检测)
Linux下QT配合OpenCV完成图像处理(实现基本的人脸检测)
205 0
Linux下QT配合OpenCV完成图像处理(实现基本的人脸检测)
相关产品
云迁移中心
推荐文章
更多