[OpenCV] Visual Studio 2022에서 C++ OpenCV 설치하기

Cyan·2025년 1월 10일
0
post-thumbnail

OpenCV란?

OpenCV는 Open Source Computer Vision의 약자로 영상 처리에 사용할 수 있는 오픈 소스 라이브러리이다.
컴퓨터 비전에서 파이썬, 자바 등의 여러 프로그래밍 언어로 프로그래밍할 수 있다.

설치

1. OpenCV의 링크를 들어간다.

https://opencv.org/

2. 스크롤을 내리면 여러 버전이 있는데, 알맞은 버전과 플랫폼을 선택하자.

나는 여기서 4.10.0 버전의 Windows로 다운로드 받았다.

3. 다운받은 파일을 실행하여 설치 폴더를 선택한다.

자신이 편한 폴더 선택 후 Extract
이 설치 폴더 경로를 기억하자.

여기까지 했다면 설치는 완료했는데,, 이제 설정을 할 차례다.

환경변수 설정

1. [고급 시스템 설정] 혹은 [시스템 환경 설정] 등을 윈도우 검색창에 입력하여 해당 창을 연다.

2. 밑의 환경 변수를 클릭하여 환경변수 설정창으로 이동한다.

이제 환경 변수를 설정할 건데, 절대 실수해서는 안 된다. 섣불리 delete키를 눌렀다가 다른 환경변수가 날아가는 일이 없도록 하자.

3. 시스템 변수의 새로 만들기를 누른 후, 변수 이름에 OPENCV_DIR을 입력하고, 변수 값에는 설치 폴더의 build 폴더를 넣어준다.

설치 경로가 C:\라면, C:\opencv\build가 된다.
확인을 눌러 창을 닫는다.

4. Path 변수를 찾고 편집 버튼을 누른다.

새로 만들기버튼 혹은 맨 아래 행을 더블클릭 하고, 다음의 경로를 입력한다.

%OPENCV_DIR%\x64\vc16\bin

확인을 눌러 창을 닫는다.
위쪽에 사용자 변수, 아래쪽에 시스템 변수가 있을텐데 아무 영역에 해도 상관 없을 것이다. 이렇게 환경 변수 설정이 끝났다.

Visual Studio 2022 프로젝트 설정

이제 Visual Studio 프로젝트에서 opencv를 참조하면 된다.

프로젝트 생성 시에는 Windows 데스크톱 마법사를 선택하여 프로젝트를 생성하였다.

우선 [프로젝트 설정]을 열어준다. 구성은 모든 구성으로, 플랫폼은 x64로 설정해준다.

1.[C/C++]->[일반] 탭으로 이동한다.

[추가 포함 디렉터리] 항목에 편집을 눌러 다음의 경로를 추가한다.

$(OPENCV_DIR)\include

아래쪽 평가 값:에 경로가 제대로 나타난다면 성공.

2. [링커]->[일반] 탭으로 이동한다.

[추가 라이브러리 디렉터리] 항목에 편집을 눌러 다음의 경로를 추가한다.

$(OPENCV_DIR)\x64\vc16\lib

vc16은 비주얼 스튜디오의 버전에 따라 숫자가 달라질 수 있으므로 참고하자.
여기 역시 아래쪽 평가 값:에 경로가 제대로 나타난다면 성공.

혹시 평가 값:이 제대로 나타나지 않는다면 경로를 재확인하거나, 환경 변수를 다시 설정해보자.

3. [링커]->[입력] 탭으로 이동한다.

여기 항목은 구성의 DebugRelease에 따라 다른 값을 할당해야 한다.
우선 구성을 Debug로 바꿔주자.

[추가 종속성] 항목에 편집을 눌러 다음의 항목을 추가한다.

opencv_world4100d.lib

이 파일은 앞서 [추가 라이브러리 디렉터리]에 입력한 경로에 있으니, 파일 이름은 실제 폴더를 열어 참고하여도 좋다. opencv 버전에 따라 파일 이름이 다를 수 있다.

구성을 Release로 바꾼 후 [추가 종속성] 항목에 편집을 눌러 다음의 항목을 추가한다.

opencv_world4100.lib

파일 이름의 끝에 d가 붙어있다면 Debug, 그렇지 않다면 Release라 생각하면 된다.

테스트

제대로 설치되었는지 다음의 코드를 입력하여 실행해보자. 반드시 x64 플랫폼에서 실행해야 한다.

#include "opencv2/opencv.hpp"
#include <iostream>

using namespace std;

int main()
{
	cout << CV_VERSION << endl;
}

이 코드를 실행할 경우 opencv의 버전이 출력된다.

성공!

0개의 댓글