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

Ubuntu下opencv2.4.9安装

2017-11-14 18:55 309 查看
1. 先从sourceforge上下载OpenCV的源码http://jaist.dl.sourceforge.net/project/opencvlibrary/opencv-unix/2.4.9/opencv-2.4.9.zip2. 解压到任意目录unzip opencv-2.4.9.zip3. 进入源码目录,创建release目录cd opencv-2.4.9mkdir release  4. 可以看到在OpenCV目录下,有个CMakeLists.txt文件,需要事先安装一些软件sudo apt-get install build-essential cmake libgtk2.0-dev pkg-config python-dev python-numpy libavcodec-dev libavformat-dev libswscale-dev  5.  进入release目录,安装OpenCV是所有的文件都会被放到这个release目录下cd release  6. cmake编译OpenCV源码,安装所有的lib文件都会被安装到/usr/local目录下cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..  此时若报以下错误:CMake Error at cuda_compile_generated_matrix_operations.cu.o.cmake:206 (message):Errorgenerating/home/yy/opencv-2.4.9/build/modules/core/CMakeFiles/cuda_compile.dir/__/dynamicuda/src/cuda/./cuda_compile_generated_matrix_operations.cu.omake[2]: *** [modules/core/CMakeFiles/cuda_compile.dir/__/dynamicuda/src/cuda/./cuda_compile_generated_matrix_operations.cu.o] 错误 1make[1]: *** [modules/core/CMakeFiles/opencv_core.dir/all] 错误 2make: *** [all] 错误 2输入:“cmake -D CMAKE_BUILD_TYPE=bulid -D CMAKE_INSTALL_PREFIX=/usr/local -D CUDA_GENERATION=Kepler ..”,即可解决, 接着make[modules/gpu/CMakeFiles/cuda_compile.dir/src/nvidia/core/./cuda_compile_generated_NCVPyramid.cu.o]错误 1make[1]: *** [modules/gpu/CMakeFiles/opencv_gpu.dir/all] 错误 2 遇到这个问题是因为工作站下安装了cuda,所以opencv会去解决办法:http://download.csdn.net/download/gqixf/10119299这个地址下载NCVPixelOperations.hpp文件替换掉opencv文件夹中的源文件即可。出现的问题(3):make[2]: *** [modules/gpu/CMakeFiles/opencv_gpu.dir/src/graphcuts.cpp.o] 错误 1 解决办法:打开graphcuts.cpp文件,修改graphcuts.cp
p里面的
#if !defined (HAVE_CUDA) || defined (CUDA_DISABLER)
为:
#if !defined (HAVE_CUDA) || defined (CUDA_DISABLER)|| (CUDART_VERSION >= 8000)
然后继续 make -j4
7. 安装makesudo make install添加环境变量以及测试  sudo gedit /etc/ld.so.conf.d/opencv.conf在opencv.conf里面加入命令  /usr/local/lib更新库目录sudo ldconfig打开文件bash.bashrcsudo gedit /etc/bash.bashrc加入下面两行PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfigexport PKG_CONFIG_PATH8. 测试,在某个目录下建立一个test.cpp文件#include <cv.h>  #include <highgui.h>   using namespace cv;   int main() {      Mat image;      image = imread("test.jpg");       namedWindow("Display Image", CV_WINDOW_AUTOSIZE);      imshow("Display Image", image);      waitKey(0);      return 0;  }9. 写一个cmake的makefile,也叫CMakeLists.txtcmake_minimum_required(VERSION 2.8)project(test)  find_package(OpenCV REQUIRED)  add_executable(test test.cpp)  target_link_libraries(test ${OpenCV_LIBS}) 10. 编译+运行cmake .  make  得到可执行文件test11.  随便弄个jpg图片做个测试,注意要和上面那个可执行文件放在同一目录下面,我这里名字取的是test.jpg。12.    ./test   test.jpg    如果能看到照片,那就表示成功了。 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: