一、OpenCV的安装: 选择Ubuntu14.04LFS + opencv2.4.11 ,具体参考官方提供的安装教程
1.先安装个叫cmake 的工具,使用 sudo apt-get install cmake ,安装的应该是最新版;另外可以安装cmake的图形界面
$ sudo apt-get install cmake-gui
输入cmake-gui 即可打开图形界面,可以updatedb 一下软件更新。
2.安装好cmake 后接着下一步,这步很重要,你需要解决很多依赖关系,比如支持jpg,jpeg,png等图形格式、movies等的读写。看操作:在命令行输入以下一串东西:
$ sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg62-dev libtiff4-dev cmake libswscale-dev libjasper-dev
3.下载OpenCV的安装包
3.1 $ cd ~ # 切换到用户目录 /home/user_name/
3.2 使用 wget 命令下载安装到当前工作目录;也可以去官网点击下载你所需版本。
3.3 解压
.zip的解压 unzip xxxxxxx.zip ;
.tar.bz2的解压 tar -xvf xxxxxx.tar.bz2
3.4.进入解压后的文件目录下,例如 cd opencv2.4.11/
- 执行以下三个命令
$ mkdir release
$ cd release
$ cmake ..
5.上一步执行成功后,接着进行
$ make
$ sudo make install
- 等待上一步执行成功需要一些时间,等待上一步执行成功。以上执行成功后进行一些路径、环境变量的配置。
6.1 $ sudo vim /etc/ld.so.conf.d/opencv.conf 写入 /usr/local/lib 保存
6.2 $ sudo ldconfig
6.3 $ sudo vim /etc/bash.bashrc 在末尾写入
PKG_CONFIG_PATH=$ PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
Export PKG_CONFIG_PATH
最后,restart 重启电脑,否则OpenCV 可能不会正常工作,如果不这么做的话!
完成以上所有步骤后,接下来就是check一些opencv自带的demos
$ cd ~
$ mkdir openCV_samples
$ cp OpenCV-2.1.0/samples/c/* openCV_samples
$ cd openCV_samples/
$ chmod +x build_all.sh
$ ./build_all.sh
接着输入
$ ./facedetect --cascade="/usr/local/share/opencv/haarcascades/haarcascade_frontalface_alt.xml" --scale=1.5 lena.jpg
如果以上步骤都成功执行,那就成功安装了opencv。
二、不能够成功编译
我的实例:Can't compile opencv in linux问题的解决
详见链接:https://stackoverflow.com/questions/11532963/cant-compile-opencv-in-linux
Try this:
g++ pkg-config --cflags opencv
-o hello hello.cpp pkg-config --libs opencv
You can call pkg-config like pkg-config --cflags --libs opencv, too.
According to the [GCC manual] (https://gcc.gnu.org/onlinedocs/gcc/Link-Options.html#Link-Options)
It makes a difference where in the command you write this option; the linker searches and processes libraries and object files in the order they are specified. Thus, ‘foo.o -lz bar.o’ searches library ‘z’ after file foo.o but before bar.o. If bar.o refers to functions in ‘z’, those functions may not be loaded.
So the pkg-config --libs opencv has to come at the end of the the filename, else gcc will not be able to resolve the symbols.
g++ hello.cpp -o hello pkg-config --cflags --libs opencv
By Comma.He
Date 2015/07/07