※ OpenCV란?
OpenCV는 Open Source Computer Vision Library 약자로, 이미지와 동영상 처리에 사용되는 라이브러리 입니다.
C++, Python, Java 등 다양한 프로그래밍 언어를 지원하며
이미지 프로세싱, 컴퓨터 비전 및 머신러닝 알고리즘에 대한 다양한 함수와 라이브러리를 제공합니다.
OpenCV는 이미지나 동영상에서 물체검출, 추적, 특징추출, 패턴인식, 얼굴인식 등의 작업을 수행할 수 있으며
이 외에도 이미지 필터링, 색 공간 변환, 이미지 모핑, 카메라 보정 등 다양한 기능을 제공합니다.
OpenCV는 무료로 제공되며, 비즈니스 및 개인 프로젝트 모두에서 사용 가능합니다.
또한, 여러 플랫폼에서 동작하므로 모바일, 웹, 데스크탑 등 다양한 환경에서 사용할 수 있습니다.
최근에는 OpenCV가 딥 러닝과 결합하여 이미지 및 동영상 데이터를 쉽게 처리하고
이를 이용한 인식 및 추적 등의 작업을 빠르게 수행할 수 있도록 변화하고 있습니다.
OpenCV C++ 설치 및 세팅 방법
Releases - OpenCV
Become a Member Stay up to date on OpenCV and Computer Vision news Join our Newsletter
opencv.org
위 사이트에 접속하여 환경에 맞는 패키지를 다운받습니다.
저는 Windows로 개발하기 위해 Windows 설치파일을 다운받았습니다.
다운로드가 완료되면 적당한 경로를 설정하여 압축을 해제합니다.
(opencv라는 이름으로 폴더가 생성되기 때문에 굳이 따로 폴더를 만들어 줄 필요는 없습니다)
이제 비주얼 스튜디오에서 C++ 기반의 프로젝트를 생성하고
플랫폼을 64비트로 설정한 후 라이브러리를 사용하기 위한 디렉터리 세팅을 진행합니다.
프로젝트 우클릭 > 속성 > C/C++ > 일반 > 추가 포함 디렉터리에 위 경로를 추가해줍니다.
프로젝트 우클릭 > 속성 > 링커 > 일반 > 추가 라이브러리 디렉터리에 위 경로를 추가해줍니다.
프로젝트 우클릭 > 속성 > 링커 > 입력 > 추가 종속성에 OpenCV관련 lib파일을 추가해줍니다.
(Debug는 470d.lib, Release는 470.lib)
※ 세팅이 끝났으면 간단하게 예제를 한번 실행해보겠습니다.
#include <opencv2/highgui.hpp>
using namespace cv;
Mat img = imread("opencv.jpg");
imshow("img", img);
waitKey(0);
이미지를 읽고 화면에 보여주는 간단한 예제의 실행화면 입니다.
추가적으로 MFC 프로젝트에서 디버깅할 때 메모리 누수(Memory Leak) 현상이 발생하는 문제가 있는데
구성속성 > 고급 > MFC사용 옵션을 "정적 라이브러리에서 MFC 사용"으로 변경해주면 해결됩니다.
※ 다음 챕터에서는 Haar Cascade 기법으로 얼굴과 눈 영역을 추출하는 방법에 대해 알아보겠습니다.
[C++] OpenCV Haar Cascade로 얼굴, 눈 영역 찾기 예제 [02]
[C++] OpenCV란? 개념과 설치/세팅 방법 [01] ※ OpenCV란? OpenCV는 Open Source Computer Vision Library로, 이미지와 동영상 처리에 사용되는 라이브러리 입니다. C++, Python, Java 등 다양한 프로그래밍 언어를 지원
dev-drive.tistory.com
'OpenCV' 카테고리의 다른 글
[C++] OpenCV DNN 알고리즘으로 객체 인식/분류하는 예제 [04] (0) | 2023.03.13 |
---|---|
[C++] OpenCV DNN 알고리즘으로 얼굴 인식하는 예제 [03] (0) | 2023.03.13 |
[C++] OpenCV Haar Cascade로 얼굴, 눈 영역 찾기 예제 [02] (0) | 2023.03.08 |
댓글