본문 바로가기

컴퓨터 과학 & 영상처리 관련/OpenCV

visual studio 2008 - opencv 2.4.3 설정

1. opencv 설치

2. cmake 설치 & 실행 후 dll, lib 파일들 컴파일 

   cmake 안해도 되는듯? (2.4.0 버전부터 아마 컴파일 된 파일들을 제공하는 듯)

   C:\OpenCV2.4.3\opencv\build\x86\vc10

   C:\OpenCV2.4.3\opencv\build\x86\vc9

   C:\OpenCV2.4.3\opencv\build\x64\vc9

   C:\OpenCV2.4.3\opencv\build\x64\vc10

 

3. 새 프로젝트 생성 시

★ MFC 응용 프로그램 - 대화 상자 기반(다이얼로그)

★ 소스코드에 #include "opencv2/opencv.hpp" 추가할것 그러고 나면 cv:: 안의 내용 사용 가능

(opencv.hpp는 cmake를 통해 설치한 c:/opencv2.4.3/opencv/build/include/opencv2/opencv.hpp임)

using namespace cv;

 

 

4. 컴파일 시 사용될 소스 경로 설정

★ Visual Studio 옵션으로 설정

   옵션 -> 프로젝트 및 솔루션 -> 구성 속성 -> VC++디렉터리 -> 포함 디렉터리
   이곳에다가 opencv2.4.3/opencv/build/include 폴더를 추가

   (예 : ./include)

 

★ 프로젝트 속성으로 설정

   프로젝트 속성 -> C/C++ -> 일반 -> 추가 포함 디렉터리

   (예 : ./include)


5. 컴파일 시 사용될 lib 경로 설정

★ Visual Studio 옵션으로 설정

   옵션 -> 프로젝트 및 솔루션 -> 구성 속성 -> VC++디렉터리 -> 라이브러리 디렉터리

   이곳에다가 lib가 담긴 폴더를 추가 (예 : ./lib)

 

★ 프로젝트 속성으로 설정

   프로젝트 속성 -> 링커 -> 일반 -> 추가 라이브러리 디렉터리

   (예 : ./staticlib) ※staticlib의 경우 dll과 실행파일 따로 말고..exe 파일에다가 다 때려넣는 방법인듯?

   구성 속성 -> 링커 -> 입력 -> 특정 라이브러리 무시

   (예 : LIBCMTD.lib MSVCPRTD.lib)

 

6. lib 파일 사용 명시

★ 프로젝트 속성으로 설정

   프로젝트 속성 -> 링커 -> 입력 -> 추가 종속성 

   (cv200.lib cxcore200.lib highgui200.lib )

   or

★ 소스에서 추가

  이 경우 프로젝트 폴더로부터의 상대경로임. .h 파일은 #include 하는 소스로부터의 상대 경로이고.

#ifdef _DEBUG

#pragma comment(lib, "opencv_stitching243d.lib")
#else

#pragma comment(lib, "opencv_stitching243.lib")

#endif

  

7. 실행시 사용될 dll 파일 경로설정

★ 실행 파일 폴더에 dll 파일 복사

★ 비주얼 스튜디오 디버깅용으로 dll 파일에 대해 따로 폴더 관리 하려면 아래와 같이 사용

   그러나 이렇게 사용할 시 작업 디렉터리가 ./bin 이 되므로 bmp 파일 등을 추가할 때 경로에 대해서 신경 쓸 것