本电脑配置为Ubuntu16.04+anaconda2+opencv2.4.9
参考博客:
http://www.cnblogs.com/jeakon/archive/2013/05/08/3066469.html
http://www.jb51.cc/article/p-brrzhmwb-rk.html
@L_301_2@
http://blog.csdn.net/zy3381/article/details/50513844
http://www.cnblogs.com/asmer-stone/p/4592421.html
https://my.oschina.net/drjones/blog/521664
http://www.jb51.cc/article/p-nhudcabo-xp.html
一、安装依赖包
sudo apt-get install build-essential sudo apt-get install libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg62-dev libtiff4-dev libswscale-dev libjasper-dev
安装cmake
sudo apt-get install cmake
安装pkg-config
sudo apt-get install pkg-config
二、编译安装过程
1、下载opencv源码,百度网盘或者官网,解压(opencv-2.4.9)。
2、编译。首先新建release文件夹,使用cmake来检测编译环境以及生成makefile以及其他project信息,然后make编
译(大概需要十几分钟),然后make install安装。具体命令如下
cd opencv-2.4.9 mkdir release cd release cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local .. make sudo make install
上面有的博客说也可以直接 (cmake .),但是这样不会生成release文件夹,导致后面设置python的接口出现问题。
在 /etc/ld.so.conf 文件中最后一行添加 /usr/local/lib
上面的ld.so.conf文件是只读文件,没有修改权限,因此需要获取root权限后修改,
sudo su
获取root权限后使用如下命令打开ld.so.conf
gedit /etc/ld.so.conf打开后在最后一行添加 /usr/local/lib,保存。
4、使用下面的命令使opencv的相关链接库被系统共享
sudo ldconfig
5、指定opencv的头文件位置。
sudo gedit /etc/bash.bashrc
使用上述命令打开bash.bashrc后,在最后一行添加
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig export PKG_CONFIG_PATH三、测试
1、在解压的opencv目录下找到 samples/c/build_all.sh,运行该文件
cd samples/c/ ./build_all.sh
编译完后试一个人脸检测的程序
./facedetect --cascade="/usr/local/share/OpenCV/haarcascades/haarcascade_frontalface_alt.xml" --scale=1.5 lena.jpg
运行结果
四、python接口
尽管目前opencv已经安装成功,但是使用python调用opencv还是不行(import cv2)报错。
我的电脑安装的是anaconda2,找到/opencv-2.4.9/release/lib/cv2.so 文件,将其拷贝到python的库目录,由于我安装
的是anaconda2,所以需要拷贝到 ~/anaconda2/lib/python2.7/site-packages ,如果电脑使用的是ubuntu系统的
python,那么需要拷贝到 /usr/local/lib/python2.7/dist-packages 。(如果提示权限不够,则使用sudo su进入root模
式,然后cp ~/opencv-2.4.9/release/lib/cv2.so /usr/local/lib/python2.7/dist-packages)
在终端输入python , import cv2 即可成功