OpenCV 구성

  • OpenCV 모듈

    • 모듈이라고 부르는 다수의 라이브러리들의 집합
    • 크게 메인 모듈과 추가 모듈로 나눌 수 있음
  • OpenCV 메인 모듈

    • 핵심 기능, 널리 사용되는 기능, 기반 기능(infrastructure)
    • GitHub 주소 : https://github.com/opencv/opencv

image

  • OpenCV 추가 모듈(extra modules)

    • 최신 기능, 널리 사용되지 않는 기능, 특허, HW 의존적 기능(CUDA) 등

    • GitHub 주소 : https://github.com/opencv/opencv_contrib/

image

  • 일반적인 컴퓨터 비전 처리 과정과 필요한 OpenCV 모듈 구성

image

OpenCV 설치

  • OpenCV 헤더 파일, LIB 파일, DLL 파일을 컴퓨터에 생성하는 작업

    • OpenCV 헤더 파일, OpenCV LIB 파일 : OpenCV 프로그램을 빌드할 때 필요

    • OpenCV DLL 파일 : OpenCV 프로그램을 실행할 때 필요

  • Windows 운영체제에서 설치하는 2가지 방법

    • 설치 실행 파일 이용
      • 장점 : 설치가 빠르고 간단함, 미리 빌드된 DLL, LIB 파일 제공
      • 단점 : OpenCV 추가 모듈 미지원, Windows 64 비트 운영체제만 지원
    • 소스코드 직접 빌드
      • 장점 : 자신의 시스템 환경에 최적화된 DLL, LIB 파일 생성, 원하지 않는 옵션 선택 가능
      • 단점 : 빌드작업이 복잡하고 시간이 오래 걸림
  • 설치 순서

  1. https://opencv.org/releases 에서 windows를 클릭
  2. 파일 실행 후 C:\ 로 지정 후 Extract 버튼 클릭하면 C:\opencv 폴더가 생성되면서 압축이 해제됨
  3. 설정 -> 시스템 -> 정보 -> 고급시스템 설정 -> 환경변수에 들어가서 user-id 에 대한 사용자 변수 새로 만들기 클릭
  4. 변수 이름 : OPENCV_DIR / 변수 값 : C:\opencv\build 를 입력하여 OpenCV 폴더 위치를 시스템 환경 변수에 등록
  5. user-id에 대한 사용자 변수 Path 항목을 편집하여 새로 만들기를 통해 %OPENCV_DIR%\x64\vc15\bin 추가\
  6. 명령 프롬프트 창을 열어 opencv_version을 입력했을때 설치한 버전의 값이 나오면 완료

OpenCV 프로그램 개발 환경 설정

Visual C++ 새 프로젝트 HelloCV 만들기
  • Visual Studio 2022를 실행하고, [새 프로젝트 만들기] 항목 선택
    • 또는 Visual Studion 2022 메뉴에서 [파일] - [새로 만들기] - [프로젝트] 선택
  • 새 프로젝트 만들기 창에서 [빈 프로젝트] 항목 선택
  • 새 프로젝트 구성 창에서 프로젝트 이름에 HelloCV 입력 후 위치는 임의의 폴더 선택
    • 하단의 “솔루션 및 프로젝트를 같은 디렉터리에 배치” 옵션을 선택후 [만들기] 클릭
      • 솔루션 : 여러개의 프로젝트를 관리할 수 있는 컨테이너
      • 간단한 프로그램이니 솔루션 및 프로젝트를 같은 디렉터리에 배치
  • [프로젝트] - [새 항목 추가] - [C++ 파일(.cpp)]를 선택 후 이름을 main.cpp로 변경 및 추가하고 아래 코드 입력
#include <iostream> // 텍스트 문자열을 출력하기 위한 c++ 헤더파일
#include "opencv2/opencv.hpp" // opencv와 관련된 헤더파일

int main() {
	std::cout << "Hello, OpenCV" << CV_VERSION << std::endl;
}
OPENCV 속성 추가하기
  • DEBUG / RELEASE 모드 둘 다 추가해야 함

  • OpenCV 헤더 파일 위치 지정하기
    • [프로젝트] - [HelloCV속성] - [구성 속성] - [C/C++] - [일반] - 추가 포함 디렉터리 항목의 편집을 클릭 한 후 $(OPENCV_DIR)\include 입력
  • OpenCV LIB 파일 위치 지정하기
    • [프로젝트] - [HelloCV속성] - [구성 속성] - [링커] - [일반] - 추가 포함 디렉터리 항목의 편집을 클릭 한 후 $(OPENCV_DIR)\x64\vc15\lib 입력
  • OpenCV 헤더 파일 위치 지정하기
    • [프로젝트] - [HelloCV속성] - [구성 속성] - [링커] - [입력] - 추가 종속성의 편집을 클릭 한 후 opencv_world455d.lib 입력
    • release 모드에 적용할 때는 opencv_world455.lib 입력
  • [빌드] - [솔루션 빌드] (단축키 F7) 클릭
  • 빌드 완료시 프로그램 생성 위치 \x64\

  • 프로그램 실행
    • 디버깅 : [디버그] -> [디버깅 시작] (단축키 F5)
    • 실행 : [디버그] -> [디버그하지 않고 시작] (단축키 Ctrl + F5)