Just My Life & My Work

更新:2014/12/09

Windows XPWindows 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;
}

圖片跑出來就表示成功嚕!

HelloWorld

剛開始的成功就像旭日東昇一樣,讓人充滿希望!

此外,若你是開專案,記得去專案選項設定,如此先前的設定才有作用喔!

回饋

參考:OpenCV – 男孩 ~ 動力叫好奇

Comments on: "[OpenCV] Dev-C++ 4.9.9.2 安裝 OpenCV 2.0" (36)

  1. 試過你的程式,但是只能秀出照片的部分,請問使用的照片是否有限制?

  2. 您好,請問一下,ERROR: sampleCB() – buffer sizes do not match,這行是出了甚麼問題?

  3. 請問一下 我前面步驟都完成了 到程式碼那邊卻無法編譯
    在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

  4. 您好,我在試的過程中發生了#include “stdafx.h"錯誤,請問這是因為2.0版本不支援嗎?還是其他錯誤呢ˊ<_______ˋ我程式總是學不好,有點挫敗……

    • 你可以找一下stdafx.h是否存在,通常stdafx.h是你自己定義的引用檔,不然就把它刪掉試試看,或許對你來說是多餘的一行~

      你身邊的同學應該有有在學OpenCV吧?互相請教學習成效佳喔! 😀

      • 請問要怎麼檢查stdafx.h是否存在呢?我可能是基礎沒有學好,現在要學OpenCV有些困難,我會多多請教身邊的同學,謝謝指教^_____^

        • 找一下你專案你的檔案有哪些,如果你是用別人寫好的專案,應該就會有stdafx.h檔才是~應該會放在你現在程式碼檔的同一資料夾中。

          多多玩一些範例,修改變數值來跑跑看有什麼結果,一定能讓你樂在其中,因為所做即所得喔!會逐漸獲得成就感~ 😉

  5. 您好,請問如果是要OpenCV 2.4.9要怎麼設環境變數呢?因為我學校要製作畢業專題,需要比較新的版本,然後我研究了很多網路上的文章,都行不通,可以麻煩您幫我解答嗎?

  6. 您好,請問如果想講圖片改成影片的話,程式碼應該如何更改?

隨意留個言吧:)~

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料

標籤雲