linux环境下配置opencv
放假了,台式机又不能带回家,回去就只有个 小笔记本,不够我玩的,所以就买了一台vps,远程在服务器开发就好了。服务器版本:ubuntu 12.4.。
先下源码,我用的是现在最新的opencv 3.10版本的源码,你可以去opencv官网下wget http://skylineservers.dl.sourceforge.net/project/opencvlibrary/opencv-unix/3.1.0/opencv-3.1.0.zip,这里我把我下载的云盘地址发出来,失效了请@我:百度云盘链接:http://pan.baidu.com/s/1pKyyJHL;
然后把代码解压出来 unzip opencv-3.1.0.zip,如果你没有unzip的话就装一个咯apt-get instell unzip,
安装依赖:
- sudo apt-get install build-essential
- sudo apt-get install cmake
- sudo apt-get install libgtk2.0-dev
- sudo apt-get install pkg-config
- sudo apt-get install python-dev python-numpy
- sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev
进入目录opencv-3.1.0,然后cmake生成makefile:
先把我的安装历史纪录给大家看下吧,大家也好心里有数
- make .
然后
- make && make install
这下子代码插入了。
现在我们做的就是该怎么找到opencv库了:
首先打开这个文件,在最后一行添加一句话,当然它也可能是空的,没影响。
- sudo vim /etc/ld.so.conf.d/opencv.conf
- /usr/local/lib
运行以下代码配置库:
- sudo ldconfig
sudo gedit /etc/bash.bashrc
在这个文件的末尾添加下面两行:
- PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
- export PKG_CONFIG_PATH
然后测试:
- cd ~
- vim hello.cpp
- #include <stdio.h>
- #include <opencv2/opencv.hpp>
- using namespace cv;
- int main(int argc, char** argv )
- {
- if ( argc != 2 )
- {
- printf("usage: DisplayImage.out <Image_Path>\n");
- return -1;
- }
- Mat image;
- image = imread( argv[1], 1 );
- if ( !image.data )
- {
- printf("No image data \n");
- return -1;
- }
- namedWindow("Display Image", WINDOW_AUTOSIZE );
- imshow("Display Image", image);
- waitKey(0);
- return 0;
- }
然后编译:
- g++ `pkg-config --cflags opencv` -o hello hello.cpp `pkg-config --libs opencv`
然后运行:
- ./hello psb\ 11.jpg
后面的psd是图片路径,由于我是在服务器上运行的,所以没办法显示出来,服务器默认是没有装Xwindow的,我装了,但是报了一堆错,就放弃了
- [email protected]:~# ./hello psb\ 11.jpg
- (Display Image:25620): Gtk-WARNING **: cannot open display: