OpenCV是从Intel在1999年建立的一个项目上发展起来的一个开源的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它是轻量级的特别高效——由一系列C函数和少量C++类构成,目前实现了很多图像处理和计算机视觉方面的通用算法,并且提供了C\C++、Python、Ruby、MATLAB等多种语言的接口。由于OpenCV的应用领域非常广如人机互动、图像分割识别、运动分析跟踪、机器视觉等,所以一直都很受欢迎。
安装
以Ubuntu14.04LTS为例,安装之前我们先准备一下环境,解决依赖问题,建议同时安装qt,输入以下命令就可以:
1
sudo apt-get install build-essential cmake libopencv-dev libgtk2.0-dev pkg-config python-dev python-numpy libavformat-dev libtiff4-dev libswscale-dev libjasper-dev
- GCC:build-essential
- CMake:cmake
- GTK开发版:libgtk2.0-dev
- pkg-config:pkg-config
- Python:python-dev
- Numpy:python-numpy
- 媒体包:ffmpeg、libavcodec-dev、libavformat-dev、libswscale-dev、libjpeg-dev、libpng-dev libtiff-dev、libjasper-dev
- 安装qt的命令:
1
sudo apt-get install qt-sdk
然后下载一下源代码,我们这里以2.4.13为例:
1
wget https://github.com/Itseez/opencv/archive/2.4.13.zip
紧接着解压缩,新建build目录,然后配置安装在/usr/local目录下:
1
2
3
4
5 unzip 2.4.13.zip
cd opencv-2.4.13
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
编译,安装:
1
2 make -j $(nproc) # 时间比较长,make -j可以进行多核处理器的编译,$(nproc)可以返回机器的核数.
make install # 把编译结果安装到 /usr/local下面.
配置
在文件/etc/ld.so.conf中添加/usr/local/lib,使用动态库管理命令ldconfig,共享opencv的相关动态链接库:
1
sudo ldconfig -v
然后设置一下环境变量,在/etc/bash.bashrc文件的最后一行添加:
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
运行
在解压缩文件后的目录中找到OpenCV的samples示例目录,然后进入c语言的示例目录,然后执行下面脚本,会将所有samples示例都编译成可执行文件,命令和图示如下:
1
2
3
4 cd samples
cd c
ls
./build_all.sh
然后我们挑一个运行一下Delaunay(三角剖分算法)看看效果:
HelloWorld
1 | mkdir test |
然后编辑HelloWorld.cpp文件,内容如下:
1 | include <stdio.h> |
新建CMakeLists.txt,内容如下:
1 | cmake_minimum_required(VERSION 2.8) |
然后编译一下,运行看看:
1
2
3
4
5
6 mkdir build
cd build
cmake ..
make
./helloworld lena.jpg
./helloworld ../lena.jpg
先就到这里,有兴趣的同学可以继续看samples中的例子。