Ubuntu下使用CodeLite编写OpenCV程序

论坛 期权论坛 脚本     
匿名网站用户   2020-12-20 07:21   11   0

这学期开始的时候幸运地拿到了保研的名额,本来想窝在宿舍打撸,但是一看身边的人都是保研到清北复交的,想想还是不浪为好,于是决定开始跟老师干一些活儿,老师的研究方向里有一个是医疗图像处理,科研(代码)之路开始了。

老师让我开始学习一下图像相关的知识,但是给我的配的一台主机好像不太好,处理器是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的压缩包解压,进入目录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里添加opencv_calib3d;opencv_contrib;opencv_core;opencv_features2d;opencv_flann;opencv_gpu;opencv_highgui;opencv_imgproc;opencv_legacy;opencv_ml;opencv_nonfree;opencv_objdetect;opencv_ocl;opencv_photo;opencv_stitching;opencv_superres;opencv_ts;opencv_video;opencv_videostab

然后编译运行,一切OK!

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:1136255
帖子:227251
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP