您的位置:首页 > 运维架构

Ubuntu14.04中安装OpenCV3.0

2014-12-10 10:16 316 查看

Installation in Linux

以下步骤均在Ubuntu 10.04上进行了测试, 但是在其他发行版中也可以工作.

PS:我在Ubuntu 14.04 LTS上用官网给的这个方法成功安装了OpenCV2.4.8和OpenCV2.4.10,但是OpenCV3.0Alpha及Beta却没有安装成功.

需要的软件包

GCC 4.4.x or later
CMake 2.8.7 or higher
Git
GTK+2.x or higher, including headers (libgtk2.0-dev)
pkg-config
Python 2.6 or later and Numpy 1.5 or later with developer packages (python-dev, python-numpy)
ffmpeg or libav development packages: libavcodec-dev, libavformat-dev, libswscale-dev
[optional] libtbb2 libtbb-dev
[optional] libdc1394 2.x
[optional] libjpeg-dev, libpng-dev, libtiff-dev, libjasper-dev, libdc1394-22-dev

这些软件包可以使用终端和如下命令进行安装 或者使用Synaptic Manager:

[编译器] sudo apt-get install build-essential
[必    需] sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
[可    选] sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev


获得OpenCV源码

可以使用 OpenCV 最新的稳定版或者 从我们的Git repository中抓取最新的节点。

获得OpenCV最新的稳定版

跳转到
downloads page.
下载源码文件并解压。

从Git Repository中获得最新的OpenCV

登录Git客户端,克隆
OpenCV repository。如果需要从OpenCV contrib repository 获取modules,同样进行克隆。

举个例子:

cd ~/<my_working_directory>
git clone https://github.com/Itseez/opencv.git git clone https://github.com/Itseez/opencv_contrib.git


使用CMake从源码编译OpenCV

创建一个临时文件夹, 我们可以将其表示为 <cmake_build_dir>,用于存放产生的Makefiles,project files以及object files和output binaries;进入这个临时文件夹。
例如:

cd ~/opencv
mkdir build
cd build


配置。运行 cmake [<some optional parameters>] <path to the OpenCV source directory>
例如:

cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..


或者 cmake-gui

设置OpenCV source code的路径全称,例如: /home/user/opencv
设置<cmake_build_dir>的路径全称,例如: /home/user/opencv/build
设置可选的参数

运行 “Configure”
运行“Generate”

一些参数的说明

编译类型: CMAKE_BUILD_TYPE=Release\Debug
为了从opencv_contrib编译modules,设置OPENCV_EXTRA_MODULES_PATH为<path to opencv_contrib/modules/>
为了能够编译文档,设置BUILD_DOCS

为了能够编译所有的例子,设置BUILD_EXAMPLES

[可选] 编译Python. 设置下面的Python参数:

PYTHON2(3)_EXECUTABLE = <path to python>
PYTHON_INCLUDE_DIR = /usr/include/python<version>
PYTHON_INCLUDE_DIR2 = /usr/include/x86_64-linux-gnu/python<version>
PYTHON_LIBRARY = /usr/lib/x86_64-linux-gnu/libpython<version>.so
PYTHON2(3)_NUMPY_INCLUDE_DIRS = /usr/lib/python<version>/dist-packages/numpy/core/include/

[可选] 编译java.

清除参数: BUILD_SHARED_LIBS
清除 BUILD_EXAMPLES, BUILD_TESTS, BUILD_PERF_TESTS 也非常有用,这些参数都将会静态链接到OpenCV并且消耗很多存储空间。

编译. 在编译文件夹(即前面创建的临时文件夹)中执行 make 命令, 推荐通过几个线程执行此命令(为了加速)

例如:

make -j7 # runs 7 jobs in parallel


[可选] 编译文档。进入<cmake_build_dir/doc/>,对目标“html_docs”执行make命令
例如:

cd ~/opencv/build/doc/
make -j7 html_docs


安装库,在编译文件夹(即前面创建的临时文件夹)中执行

sudo make install


[可选] 运行测试

OpenCV extra repository获得测试数据

例如:

git clone https://github.com/Itseez/opencv_extra.git


设置OPENCV_TEST_DATA_PATH 环境变量为<path to opencv_extra/testdata>。
在编译文件夹(即前面创建的临时文件夹)中执行测试。

例如:

<cmake_build_dir>/bin/opencv_test_core


注意:

如果创建出来的库的大小是个非常重要的问题 (假设是在Android下编译),可以使用install/strip命令获得尽可能小的库的体积。Thestripped version appears to be twice as small.但是, 除非这些多余的字节(文件大小)确实是个问题,我们一般不推荐使用这个命令。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: