Page 25 -
P. 25
표 2-1 OpenCV 주요 모듈
모듈 이름 설명
calib3d 카메라 캘리브레이션과 3차원 재구성
core 행렬, 벡터 등 OpenCV 핵심 클래스와 연산 함수 2
dnn 심층 신경망 기능
features2d 2차원 특징 추출과 특징 벡터 기술, 매칭 방법
flann 다차원 공간에서 빠른 최근방 이웃 검색 OpenCV 설치와 기초 사용법
highgui 영상의 화면 출력, 마우스 이벤트 처리 등 사용자 인터페이스
imgcodecs 영상 파일 입출력
imgproc 필터링, 기하학적 변환, 색 공간 변환 등 영상 처리 기능
ml 통계적 분류, 회기 등 머신 러닝 알고리즘
objdetect 얼굴, 보행자 검출 등 객체 검출
photo HDR, 잡음 제거 등 사진 처리 기능
stitching 영상 이어 붙이기
video 옵티컬 플로우, 배경 차분 등 동영상 처리 기술
videoio 동영상 파일 입출력
world 여러 OpenCV 모듈을 포함하는 하나의 통합 모듈
OpenCV 모듈은 각각 별도의 *.lib 파일과 *.dll 파일로 만들어집니다. 예를 들어 OpenCV
4.0.0 버전의 경우 core 모듈은 opencv_core400.lib 파일과 opencv_core400.dll 파일로 만
들어지고, imgproc 모듈은 opencv_imgproc400.lib 파일과 opencv_imgproc400.dll 파일로
만들어집니다. OpenCV를 이용하는 프로그램을 개발하려면 여러 모듈 중에서 자신에게 필요한
모듈을 모두 선택하여 프로젝트에 포함시켜야 합니다.
일반적인 컴퓨터 비전 문제 해결 과정에서 사용할 수 있는 OpenCV 모듈을 그림 2-2에 나타냈습
니다. core 모듈은 OpenCV에서 행렬 및 영상을 저장하는 용도로 사용되므로 항상 필요합니다.
동영상 또는 정지 영상 파일을 불러오기 위해 videoio, imgcodecs 모듈이 필요하고, 기본적인
영상 처리 기능을 이용하기 위해 imgproc 모듈도 필요합니다. 이외에도 특징점 검출, 객체 검출,
움직임 분석 등 특화된 컴퓨터 비전 기능을 사용하기 위해 features2d, objdetect, video 등 모
듈이 필요할 수 있습니다. 영상 인식 또는 판단과 같은 고수준의 작업을 위하여 ml 또는 dnn 모
듈을 사용할 수도 있습니다.
031
OpenCV(본문)인디고출력용_0326.indb 31 2019-03-26 오후 1:28:32