㈠ 如何在Eclipse下配置opencv
1、假設已經安裝了MinGW,安裝目錄:C:/MinGW,將C:/MinGW/bin添加到系統環境變數中。如果閑下載安裝MinGW麻煩,可以直接下載一個Dev-CPP或許Code::Blocks開發環境,這兩個IDE中都是自帶MinGW的。
2、下載eclipse-cpp-helios-SR2-win32.zip
3、安裝opencv,假設安裝目錄為:C:/OpenCV
4、解壓eclipse-cpp-helios-SR2-win32.zip,啟動eclipse.exe
新建C++項目->可執行程序->Hello
World
C++
Project
5、添加頭文件和庫文件
右鍵項目選擇「屬性」->C/C++
Build->Settings。
Tool
Settings
標簽頁,GCC
C++
Compiler->Includes中添加OpenCV的頭文件目錄,MinGW
C++
Linker->Libraries中添加OpenCV的庫文件目錄以及相應的庫文件名稱(注意:這里的庫文件不加後綴名)
6、配置完成以後,可以使用下面代碼進行測試:
////////////////////////////////////////////////////////////////////////
//
//
hello-world.cpp
//
//
該程序從文件中讀入一幅圖像,將之反色,然後顯示出來.
//
////////////////////////////////////////////////////////////////////////
#include
<stdlib.h>
#include
<stdio.h>
#include
<math.h>
#include
<cv.h>
#include
<cxcore.h>
#include
<highgui.h>
int
main(int
argc,
char
*argv[])
{
IplImage*
img
=
0;
int
height,width,step,channels;
uchar
*data;
int
i,j,k;
if(argc<2){
printf("Usage:
main
<image-file-name>/n/7");
exit(0);
}
//
load
an
image
img=cvLoadImage(argv[1]);
if(!img){
printf("Could
not
load
image
file:
%s/n",argv[1]);
exit(0);
}
//
get
the
image
data
height
=
img->height;
width
=
img->width;
step
=
img->widthStep;
channels
=
img->nChannels;
data
=
(uchar
*)img->imageData;
printf("Processing
a
%d*%d
image
with
%d
channels/n",height,width,channels);
//
create
a
window
cvNamedWindow("mainWin",
CV_WINDOW_AUTOSIZE);
cvMoveWindow("mainWin",
100,
100);
//
invert
the
image
//
相當於
cvNot(image);
for(i=0;i<height;i++)
for(j=0;j<width;j++)
for(k=0;k<channels;k++)
data[i*step+j*channels+k]=255-data[i*step+j*channels+k];
//
show
the
image
cvShowImage("mainWin",
img
);
//
wait
for
a
key
cvWaitKey(0);
//
release
the
image
//cvReleaseImage(&img
);
return
0;
}
㈡ 有時VC編譯的時候找不到頭文件,但這個頭文件在工程裡面是有的,是怎麼回事
引用時的地址要寫對
#include <> 引用系統頭文件
#include "" 引用自己的頭文件
如果現有文件在根目錄下,被引文件在include文件夾下,就要寫成#include "include/文件名.h"
㈢ opencv安裝後要添加路徑C:\Program Files\Opencv2.0\cxcore\include,可是安裝文件里沒有這個路徑怎麼辦
如果你把它安裝在D盤裡面的話要把C改成D的,給你一份安裝須知你可以按照上面的在重新安裝一下:
(一)安裝OpenCV
首先安裝OpenCV(按照默認路徑即可),注意安裝時選中:
Add<...>\OpenCV\bin to the system PATH
表示配置環境變數:將OpenCV的路徑加入系嫌旅統變數中。這樣做的目的是在運行程序時,程序能夠找到所需的OpenCV動態鏈接庫文件,因為所有的動態鏈接庫都置於<opencv_root>\bin目錄下。
為便於程序運行,請將bin目錄下的dll文件直接拷貝到系統安裝目錄 C:\Windows\System32 下。
(二)配置VC++6.0環境
下面需要設置VC6.0環境,使得VC6.0在編譯OpenCV程序時,能夠知道從何處找到頭文件和庫文件。
(1)配置頭文件目錄
依次打開Tools->Options->Directories: 在Include files中,添加如下目錄(6個,通常用前面的4個即可):
C:\PROGRAM FILES\OPENCV\CXCORE\INCLUDE
C:\PROGRAM FILES\OPENCV\CV\INCLUDE
C:\PROGRAM FILES\OPENCV\CVAUX\INCLUDE
C:\PROGRAM FILES\OPENCV\OTHERLIBS\HIGHGUI
C:\PROGRAM FILES\OPENCV\OTHERLIBS\CVCAM\INCLUDE
C:\PROGRAM FILES\OPENCV\ML\INCLUDE
(2)配置庫文件目錄
依次打開Tools->Options->Directories: 在Library files中,添加如下目錄:
C:\PROGRAM FILES\OPENCV\LIB
(三)配置項目
要使得VC6.0項目能夠支持OpenCV,需要在項目中添加OpenCV的庫文件鏈接,使程序能夠知道所用的函數是來自哪個庫。
依次打開Project->Settings->Link,在Object/library moles中,添加所需要的lib文件,以空格分開。通常包括(6個):
cxcore.lib cv.lib cvaux.lib highgui.lib cvcam.lib ml.lib
(這一步對於每個新工程都要重新設置,通常用前面的4個即可)。
(四)芹伍凳編寫程序
現在,你就可以VC6.0下用OpenCV來編寫程序啦!注意,要在C/C++代碼文件開始處,添加所需的頭文件。OpenCV提供的頭文件有:
cxcore.h
cv.h
cvaux.h
highgui.h
cvcam.h
ml.h
可以根據情況只添加需要的頭文件。
程序在編譯、鏈接、橘雀運行時,需要OpenCV的動態鏈接庫的支持,如果程序提示找不到dll文件,則需將OpenCV的所有動態鏈接庫文件(詳見OpenCV-dll文件夾里)直接拷到系統目錄system32下,這樣程序無論在何處運行,都沒有問題了。
㈣ Ubuntu中編譯opencv,make時出錯,提示:opencv/core/core.hpp no such file or directory.源
找不到頭文件的原因 。要麼當前指定的頭文件各個目錄不包含這個頭文件所在的目錄;要麼這個頭文件根本不存在。
解決方法:在工程屬性中「C++目錄」里,把<opencv_path>\build\include或類似的include目錄添加到頭文件目錄