2008年6月11日 星期三

Dev-C++使用OpenCV的方法

1. 在工具->編譯器選項->編譯器->在連結器命令列中加入以下命令
-lhighgui -lcv -lcxcore -lcvaux -lcvcam

2. 工具->編譯器選項->目錄->函式庫加入OpenCV的lib資料夾路
C:\Program Files\OpenCV\lib

3. 工具->編譯器選項->目錄->C引入檔(include)
C:\Program Files\OpenCV\cxcore\include
C:\Program Files\OpenCV\cv\include
C:\Program Files\OpenCV\otherlibs\highgui
C:\Program Files\OpenCV\cvaux\include
C:\Program Files\OpenCV\otherlibs\cvcam\include

4. 工具->編譯器選項->目錄->C++引入檔(include)
C:\Program Files\OpenCV\cxcore\include
C:\Program Files\OpenCV\cv\include
C:\Program Files\OpenCV\otherlibs\highgui
C:\Program Files\OpenCV\cvaux\include
C:\Program Files\OpenCV\otherlibs\cvcam\include

12 意見:

匿名 提到...

請問一下
你在這一篇文章所示範的OPENCV版本是否為1.0阿

因為我安裝的是1.1
所以在按照你所寫的要include時並無C:\Program Files\OpenCV\otherlibs\cvcam\include這一個選項

而且在otherlibs只有highgui,ffopencv以及_graphics這三各資料夾

這是不是因為版本不同的關係所造成的
若是的話會對之後有什麼有什麼影響嗎
謝謝

yester 提到...

是的,這個是在OpenCV 1.1未出的時候寫的

OpenCV 1.1除了把cvcam刪掉之外也新增了一些函式庫再otherlibs

但實際上安裝起來,除了cvcam不能用之外,使用方式跟OpenCV1.0無異

匿名 提到...

請問一下
我安裝的也是1.1
想說套用滑鼠事件裡面的程式
結果在編譯的時候編譯器訊息出現了

cannot find -lhighgui
ld returned 1 exit status

這是甚麼問題阿??
麻煩解答一下
謝謝

匿名 提到...

請問一下,我照您的步驟做了,可是執行程式時,卻出現找不到cv100.dll。

我安裝的是1.0版本

yester 提到...

要先把opencv source code compiler 過一遍:)

匿名 提到...

請問在第一步是不是都多了一個-(l)cv之類的,想知道l是多打的嗎,因為加了之後會 cannot find -lcv ,不加則會出現一堆error,我是用1.1版的,謝謝。

匿名 提到...

在Dev-C++安裝OpenCV2.0
(1)下載 OpenCV-2.0.0a-win32.exe
(2)安裝OpenCV2.0在C:\OpenCV2.0
(3)在DEV 工具/編譯器選項/編譯器 的編譯器設定組態中新增編譯器設定(加號按鈕)並命名為"OpenCV2.0"
(4)在連結器命令列中加入以下命令(前面框號要打勾)
-llibcxcore200 -llibcv200 -llibcvaux200 -llibhighgui200 -llibml200
(5)在DEV 工具/編譯器選項/目錄/二進位檔 加入:
C:\OpenCV2.0\bin
C:\Dev-Cpp\Bin
C:\Dev-Cpp\libexec\gcc\mingw32\3.4.2
(6)在DEV 工具/編譯器選項/目錄/函式庫 加入:
C:\OpenCV2.0\lib
C:\Dev-Cpp\lib
(7)在DEV 工具/編譯器選項/目錄/C引入檔 加入:
C:\OpenCV2.0\include\opencv
C:\Dev-Cpp\include
(8)在DEV 工具/編譯器選項/目錄/C++引入檔 加入:
C:\OpenCV2.0\include\opencv
C:\Dev-Cpp\lib\gcc\mingw32\3.4.2\include
C:\Dev-Cpp\include\c++\3.4.2\backward
C:\Dev-Cpp\include\c++\3.4.2\mingw32
C:\Dev-Cpp\include\c++\3.4.2
C:\Dev-Cpp\include
(9)在C:\OpenCV2.0\include\opencv中找到cxoperations.hpp檔
(10)找到檔中第66行部分程式碼如下
#else
#include <bits/atomicity.h>
#if __GNUC__ >= 4
(11)將它改成如下程式碼並儲存
#else
#include <bits/atomicity.h>
#if __GNUC__ >= 4 || __MINGW32__
(12)每次開新的專案必須在專案中選擇新建的編譯器設定(OpenCV2.0)

匿名 提到...

不好意思,我再安裝完想compile的時候出現這個
cannot find -lcvcam
不知道是哪裡有問題

匿名 提到...

您好:
請問,OpenCV是否可以兩種版本同時存在於linux下呢??(Ubuntu9.10+Eclipse)因為您的範例是屬於1.1的,小弟安裝的是2.0的所以有些標頭檔已經不再.小弟心想,是否能單單把OpenCV1.0的標頭檔直接copy到linux下的eclipse呢??????
不吝指教

THX~~~~

匿名 提到...

我是初學者
將opencv source code compiler
詳細步驟為何?

阿蠻 提到...

針對OPENCV 2.1版做一些修正,
(4)在連結器命令列中加入以下命令(前面框號要打勾)
-llibcxcore200 -llibcv200 -llibcvaux200 -llibhighgui200 -llibml200
改為
-lcxcore210 -lcv210 -lcvaux210 -lhighgui210 -lml210
因為opecv2.1\lib內的都少了lib字樣而後面的210是版本。
我自己試很久,怕忘了來這邊註記一下。

JiaPing 提到...

看完大大的文章 真是受益良多~
順便回應一下 前面C找不到cv100.dll的錯誤訊息
應該是目錄少加了這個路徑 C:\Program Files\OpenCV\bin

Copyright 2008-2009,yester