OpenCV 초보를 위한 강좌 1편

OpenCV 는 인텔에서 만든 강력한 영상처리 라이브러리입니다.

강력한 기능과 성능에도 불구하고 3D 의 오픈소스라이브러리인 OpenGL 처럼 알려지지도 않고,

활발하게 개발되지도 않고, 자주 쓰이지도 않아 안타까운 심정입니다.

더욱이 국내에는 아직 활성화된 커뮤니티가 없어 자료를 구하기도 어려운 실정입니다.

그리하여 본인이 자료를 수집하고 공부하는 과정에서부딪친 문제점들의 해결방법들과

습득한 지식들을 강좌를 통해 풀어나가 보려고 합니다.

강좌는 다음과 같은 목차로 진행될 예정이며예제 위주와 간결한 문체를 사용하여 정리 하도록 하겠습니다.

개발 환경은 별도로 거론하지 않는다면 다음과 같습니다.


- Windows XP Platform

- Visual C++ 6.0

- OpenCV beta 5.0a



- 목 차 -

1. OpenCV 란 무엇인가?

2. OpenCV 설치하기

3. OpenCV 셋팅

 

- 본 문 -

1. OpenCV 란 무엇인가?

- OpenCV(Open Source Computer Vision) 인텔에서 만든 강력한 영상처리 라이브러리입니다.

- 기초 영상처리서부터 고급 수준의 영상처리 까지 상당한 량의 알고리즘들이 함수로 구현되어 있습니다.

- Binarization, Noise, Motion Detect, Edge Detect, Pattern Recognition, Hidden Markov Model 등등

- 오픈소스로서 스펙만 맞추면 자신의 알고리즘도 라이브러리에 등록 시킬 수 있습니다.

- 인텔의 OpenCV 사이트 http://www.intel.com/technology/computing/opencv/index.htm



2. OpenCV 설치하기

- OS Platform 에 맞게 OpenCV 라이브러리 다운받아 설치합니다.

- Linux 와 Windows 용이 있고 Mac OS 에서도 돌아간다고 합니다.

- 최신 OpenCV 가 Release 되는 곳

    http://sourceforge.net/projects/opencvlibrary


- 다운받기 OpenCV beta 5.0a for Window platform

    http://nchc.dl.sourceforge.net/sourceforge/opencvlibrary/OpenCV_b5a.exe

    http://keihanna.dl.sourceforge.net/sourceforge/opencvlibrary/OpenCV_b5a.exe



3. OpenCV 셋팅

기본적을 OpenCV 를 돌아가게 하려면 크게 4가지 작업을 해주어야 합니다.


1. 첫번째, Visual Studio 셋팅에서 디렉토리 추가하기

  개발 환경에서 컴파일러가 헤더 및 라이브러리 파일들을 찾을 수 있도록 한번만 셋팅해 주면 됩니다.


  - Include files

    C:\PROGRAM FILES\OPENCV\CXCORE\INCLUDE
    C:\PROGRAM FILES\OPENCV\CV\INCLUDE
    C:\PROGRAM FILES\OPENCV\OTHERLIBS\HIGHGUI
    C:\PROGRAM FILES\OPENCV\OTHERLIBS\CVCAM\INCLUDE


  - Library files

    C:\PROGRAM FILES\OPENCV\LIB


2. 두번째, 프로젝트에 Link 하기

  라이브러리 파일들을 링크 해 줍니다.

  원칙적으로는 소스 코드에 쓰인 라이브러리만 링크 해주면 되지만 일일이 어디에 속해 있는 함수인지 알기가 번거로움으로 일반적으로는 앞에 세가지를 기본적으로 링크하면 됩니다.

  cxcore.lib, cv.lib, highgui.lib, cvcam.lib


3. 세번째, 소스파일에 header 파일 include 하기

  #include <cv.h>

  #include <cxcore.h>

  #include <highgui.h>


4. 네번째, dll 파일 복사하기

  C:\Program Files\OpenCV\bin 폴더에서 다음과 같은 파일들을 Workspace 파일이 있는 폴더에 복사 합니다.

  만약에 라이브러리를 사용하지 않았을 경우에는 필요한 파일만 복사하면 됩니다.

    cv097.dll, cxcore097.dll, cvcam097.dll, highgui097.dll

+ Recent posts