更新:2014/12/09
Windows XP和Windows 7皆可成功安裝,若有人試過Windows 8,也請跟我說喔!
本來想安裝最新版OpenCV 2.2,
但為了節省時間而直接Google相關安裝資訊,
於是找到了這一篇「Weiyu: Dev-C++安裝OpenCV 2.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.h檔
(10)找到檔中第66行部分程式碼如下
#else
#include <bits/atomicity.h>
#if __GNUC__ >= 4
(11)將它改成如下程式碼並儲存
#else
#include <bits/atomicity.h>
#if __GNUC__ >= 4 || __MINGW32__
怎麼確定安裝與設定正確呢?
很簡單~編譯與執行以下程式碼。
/** Theme: Test Code Compiler: Dev C++ 4.9.9.2 Library: OpenCV 2.0 Date: 101/10/09 Author: HappyMan Blog: https://cg2010studio.wordpress.com/ */ #include <stdio.h> #include <cv.h> #include <highgui.h> int main() { char filename[]="happytime.jpg"; // 想要取得的圖檔名稱,將其放在和專案同一資料夾中 IplImage *image; // IplImage利用 cvLoadImage()圖檔中的資料結構 image = cvLoadImage(filename,CV_LOAD_IMAGE_UNCHANGED); // 讀取影像的資料結構 if(!image){ printf("Error: Couldn't open the image file.\n"); } cvShowImage("HelloWorld",image); // 使影像在視窗中顯示 cvWaitKey(0); // 使影像視窗停留 cvDestroyWindow("HelloWorld"); // 用來銷毀一個視窗 cvReleaseImage(&image); // 釋放IplImage資料結構 return EXIT_SUCCESS; }
圖片跑出來就表示成功嚕!
此外,若你是開專案,記得去專案選項設定,如此先前的設定才有作用喔!
Comments on: "[OpenCV] Dev-C++ 4.9.9.2 安裝 OpenCV 2.0" (36)
試過你的程式,但是只能秀出照片的部分,請問使用的照片是否有限制?
讚讚
使用基本的圖片格式即可,如png和jpg,適當的大小就好,如1000×1000。至於想知道圖片支援程度,可以查看OpenCV官方文件喔~ 😉
讚讚
您好,請問一下,ERROR: sampleCB() – buffer sizes do not match,這行是出了甚麼問題?
讚讚
請問一下 我前面步驟都完成了 到程式碼那邊卻無法編譯
在cvShowImage(“HelloWorld",image); 這一行發生錯誤
實在不曉得哪出問題
9 C:\Users\Chung\Desktop\新文件1.cpp expected constructor, destructor, or type conversion before ‘(‘ token
9 C:\Users\Chung\Desktop\新文件1.cpp expected `,’ or `;’ before ‘(‘ token
10 C:\Users\Chung\Desktop\新文件1.cpp expected declaration before ‘}’ token
讚讚
您好,我在試的過程中發生了#include “stdafx.h"錯誤,請問這是因為2.0版本不支援嗎?還是其他錯誤呢ˊ<_______ˋ我程式總是學不好,有點挫敗……
讚讚
你可以找一下stdafx.h是否存在,通常stdafx.h是你自己定義的引用檔,不然就把它刪掉試試看,或許對你來說是多餘的一行~
你身邊的同學應該有有在學OpenCV吧?互相請教學習成效佳喔! 😀
讚讚
請問要怎麼檢查stdafx.h是否存在呢?我可能是基礎沒有學好,現在要學OpenCV有些困難,我會多多請教身邊的同學,謝謝指教^_____^
讚讚
找一下你專案你的檔案有哪些,如果你是用別人寫好的專案,應該就會有stdafx.h檔才是~應該會放在你現在程式碼檔的同一資料夾中。
多多玩一些範例,修改變數值來跑跑看有什麼結果,一定能讓你樂在其中,因為所做即所得喔!會逐漸獲得成就感~ 😉
讚讚
您好,請問如果是要OpenCV 2.4.9要怎麼設環境變數呢?因為我學校要製作畢業專題,需要比較新的版本,然後我研究了很多網路上的文章,都行不通,可以麻煩您幫我解答嗎?
讚讚
看來因為版本差異太大,因而環境變數有所改變,這個只能上網查詢最新解法喔!我目前無法為你嘗試~
讚讚
好的,謝謝您
讚讚
您好,請問如果想講圖片改成影片的話,程式碼應該如何更改?
讚讚
嗨~
你可參考這篇:播放影片 (Display Video)
稍加修改應可運行喔!
讚讚