在Ubuntu上使用Eclipse创建opencv项目

最近在折腾Ubuntu,把一些东西总结下,希望对大家有帮助。因为我自己也是新手入门,内容上如有错误,敬请指正。

软件版本

Ubuntu10.04

Opencv2.2.0

Eclipse 3.6 (helios) CDT

本文主要介绍在Ubuntu上使用Eclipse创建opencv项目,但为了介绍的完整性,首先介绍下如何下载、编译、安装opencv

1)在home目录下建立一个文件夹,命名为opencv2_2,然后在opencv2_2里建立两个文件夹,一个是opencv2_2_SRC, 一个是opencv2_2_BUILD,供后面cmake使用。

2)到http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/2.2/ 下载OpenCV-2.2.0.tar.bz2,解压后全部拷贝到刚才的opencv2_2_SRC下。

3)在终端输入 cmake-gui,将打开cmake的图形化窗口。点击Browse Source,选择上一步建立的opencv2_2_SRC;点击Browse Build,选择上一步建立的opencv2_2_BUILD;点击Configure,如果窗口变红,再次点击Configure,直到窗口不红;点击Generate.(注意,如果Configure后弹出报错窗口,意味着有某些必须的软件还没有装好,需先装好这些软件)

4)在终端cd进入opencv2_2_BUILD文件夹,终端输入 make  等待一段时间后,应该make成功了。再在终端输入make install。则opencv被安装到默认的/usr/local下。进入usr/local/lib,应该可以看到比如libopencv_ml.so  libopencv_highgui.so等

至此,安装完成。

 

在Eclipse里建立一个项目使用opencv

1)打开Eclipse,File->New->C++ Project, 输入Project Name,比如 opencvTest, 在Project Type里选 Executable下的Hello World C++ Project,一路Next下去直到Finish。 此时,Eclipse为我们创建了一个名为opencvTest.cpp的文件。

2)我们以opencv自带的drawing.cpp为例。 进入之前建立的opencv2_2_SRC,进入samples->cpp,打开drawing.cpp,将全部内容拷贝到opencvTest.cpp

3)与windows下使用Visual Studio类似,我们需要告诉项目include路径,lib路径以及相应的lib文件。在Eclipse左侧Project Explorer里找到刚才创建的opencvTest,在上面右击,选择Properties, C/C++ Build->Settings->GCC C++ Compiler->Includes,添加路径/usr/local/include 注意:因为在drawing.cpp写的是#include<opencv2/core/core.hpp>,因此我们添加路径时只需添加到/usr/local/include这一层,而不需要到/usr/local/include/opencv2这一层。继续设置lib路径。在GCC C++ Linker->Libraries里,下面的Library search path里添加/usr/local/lib 在上面的Libraries里添加opencv_cv  opencv_cxcore  opencv_highgui。注意:我们在/usr/local/lib下可以看到libopencv_highgui.so  libopencv_cv.so  libopencv_cxcore.so等文件,但我们在Eclipse这里只要填opencv_cv  opencv_cxcore  opencv_highgui就好了,不要前面的lib和后面的.so

为了大家看的清楚,借用别人的一张图

4) 在项目opencvTest上右击,选择Build Project,成功后Run As Local C/C++ Application,应该可以看到opencv画出来的美丽东西啦!

此外,我在网上搜索时,看到很多人说安装完opencv后,需要在/etc/ld.so.conf 文件里加上一行/usr/local/lib,运行命令 sudo ldconfig之类的,但我自己试下来并不需要做这些,make install时系统应该把这些都做好了。

posted @ 2011-04-20 15:30  yangyangcv  阅读(6121)  评论(1编辑  收藏  举报