linux下安装opencv

来源:互联网 发布:linux vi 退出 编辑:程序博客网 时间:2024/04/27 03:05
前期准备:
1、到openv的官网http://sourceforge.net/projects/opencvlibrary/ 下载opencv的版本,我移植时已经更新到2.4.7,然后
tar xvzf opencv-2.4.7.tar.gz -C /usr/local将其解压到/usr/local/下目录

2.下载并安装Cmake工具,到Cmake的官方网站http://cmake.org/cmake/resources/software.html下载Linux版本:我下载的是cmake-2.8.12.1.tar.gz。

tar xvzf cmake-2.8.12.1.tar.gz -C /usr/local将其解压到/usr/local/下目录最后配置并编译一下:

./bootstrap; make; make install;编译完执行文件就放在bin目录下

3.
(1)为了使opencv的摄像头捕抓功能或人脸识别具备多文件格式支持,需要安装一下工具
sudo apt-get install libavformat-dev  
sudo apt-get install libswscale-dev 
sudo apt-get install libgtk2.0-dev
(2)在编译调用opencv函数库的程序时,必须告诉编译器去哪里找opencv函数库,所以必须使用pkg-config来完成
下载安装pkg-config工具:

sudo apt-get install pkg-config

4.在/usr/local/目录下建立一个文件夹存放编译后的opencv源码,eg:build_opencv并用cmake生成Makefile文件。
CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local/build_opencv/ /usr/local/opencv-2.4.7/

5.然后进入build_opencv目录下,运行make;make install 注意:如果make install时提示找不到libopencv_core.so.2.4.7,再make一次

执行cp /usr/local/build_opencv/lib/libopencv_core.so.2.4.7 /usr/lib

然后修改/usr/local/build_opencv/modules/core/cmake_install.cmake 把48行的 "/usr/local/opencv/lib/libopencv_core.so.2.4.7" 注释掉

再执行make install,完了之后执行cp usr/lib/libopencv_core.so.2.4.7 /usr/local/build_opencv/lib/

6.添加环境变量PKG_CONFIG_PATH:  vim /etc/profile 中加入
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/build_opencv/unix-install/
然后测试一下环境变量:
pkg-config --cflags opencv
-I/usr/local/include/opencv -I/usr/local/include 
pkg-config --libs opencv  //显示opencv库函数的路径
/usr/local/lib/libopencv_calib3d.so /usr/local/lib/libopencv_contrib.so /usr/local/lib/libopencv_core.so  /usr/local/lib/libopencv_features2d.so /usr/local/lib/libopencv_flann.so /usr/local/lib/libopencv_gpu.so  /usr/local/lib/libopencv_highgui.so /usr/local/lib/libopencv_imgproc.so /usr/local/lib/libopencv_legacy.so 
/usr/local/lib/libopencv_ml.so /usr/local/lib/libopencv_nonfree.so /usr/local/lib/libopencv_objdetect.so /usr/local/lib/libopencv_ocl.so /usr/local/lib/libopencv_photo.so /usr/local/lib/libopencv_stitching.so /usr/local/lib/libopencv_superres.so /usr/local/lib/libopencv_ts.a /usr/local/lib/libopencv_video./usr/local/lib/libopencv_videostab.so -lrt -lpthread -lm -ldl 

7.最后测试:进入/usr/local/opencv-2.4.7/samples/c
gcc `pkg-config --cflags --libs opencv` -o delaunay delaunay.c

./delaunay

8.如果提示找不到什么.so文件则说明找不到opencv库,则需要设置LD_LIBRARY_PATH:
vim /etc/ld.so.conf 添加export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/build_opencv/lib
然后执行sudo ldconfig 重新载入系统设置,终端显示/sbin/ldconfig.real: $LD_LIBRARY_PATH:/usr/local/build_opencv/lib.....
再执行./delaunay 
如果再提示找不到什么库文件则:则很可能pkg-config找不到opencv.pc需手动的将/usr/local/build_opencv/unix-install/目录下的opencv.pc拷贝到pkg-config的默认搜索文件夹可以:
cp opencv.pc /usr/share/pkgconfig 或cp opencv.pc /usr/lib/pkgconfig/  两个文件夹任选其一
再切换到该目录下 chmod 777 opencv.pc 保证other有读文件权限。
最后

./delaunay 程序运行成功:所以opencv基本安装完成。
















原创粉丝点击