老师让我开始学习一下图像相关的知识,但是给我的配的一台主机好像不太好,处理器是Intel Core2 Duo CPU E7500,我查了一下,是入门级的,原来的硬盘里也塞满了七七八八的资料,索性直接重装成Linux系统,我的是Ubuntu Kylin 16.10版本的。
Linux的安装很简单,我选择的是U盘安装,百度里教程很多。OpenCV的教程百度里面也有,我安装的是2.4.13版本的,这里再记录一下步骤:
sudo apt-get install build-essential
sudo apt-get install cmake git pkg-config libgtk2.0-dev libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-opencv python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
将openCV(http://opencv.org/)的压缩包解压,进入目录make:
unzip opencv_2.4.13.zip
cd opencv-2.4.13
mkdir build
cd build
cmake ..
make
sudo make install
虽然严格按照步骤执行,但是安装的时候还是出现了各种各样的问题,其中一个就是make的时候出错了:
...fatal error:...
#include_next <stdlib.h>
我在StackOverflow上面找了一下原因,貌似是跟GNU GCC的版本有关系,将出错的地方的#include_next改成标准的#include就可以了,一共改了两次,make成功了。
至于IDE,本来是用Eclipse,但是按照教程试了一下,没有成功,就按照类似的方法在CodeLite上试了一下,搞定了,而且CodeLite的字体和高亮看起来真是舒服的紧呐。
步骤如下:
1.新建工程,测试代码如下:
#include <iostream>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
using namespace cv;
using std::cout;
using std::endl;
int main()
{
Mat lena1=imread("/home/willian/c/lena.jpg",1);
//namedWindow("lena");
if(lena1.empty())
{
cout << "load image failed" << endl;
return 1;
}
else
{
cout << "load image success" << endl;
/*
VideoCapture cap;
cap.set(CV_CAP_PROP_FRAME_WIDTH, 640);
cap.set(CV_CAP_PROP_FRAME_HEIGHT, 480);
cap.read(lena1);
*/
namedWindow("lena",CV_WINDOW_AUTOSIZE| CV_WINDOW_KEEPRATIO| CV_GUI_EXPANDED);
imshow("lena",lena1);
waitKey(6000);
return 0;
}
}
2.将build模式改为release模式
3.右击你的项目,选择Settings,compiler->include paths添加/usr/local;/usr/local/opencv;usr/local/opencv2,linker里添加
然后编译运行,一切OK!