반응형
-
OpenCV
는 영상 및 이미지 처리에 널리 사용되는 강력한 라이브러리입니다.- 프로젝트 홈페이지 : https://opencv.org/
-
특히
Visual Studio
환경에서OpenCV
를 사용하는 경우, 처음 설치와 설정이 복잡하게 느껴질 수 있습니다. -
이 문서는
Windows
에서Visual Studio
를 이용해OpenCV
를 쉽게 설치하고, 환경 변수를 설정하며, 간단한 예제 프로그램을 빌드하고 실행하는 전 과정을 상세히 안내합니다. -
초보자도 따라하기 쉬운 단계별 가이드로 구성되어 있으며, 예제를 통해 설치가 제대로 되었는지 검증할 수 있습니다.
- 1.1.
Visual Studio
를 위해 미리 빌드된 OpenCV를 공식 홈페이지에서 다운로드합니다.- 공식 홈페이지 (2025년 5월 기준): https://opencv.org/releases/
- 예시 URL: https://github.com/opencv/opencv/releases/download/4.11.0/opencv-4.11.0-windows.exe
- 1.2.
.exe
형식으로 다운로드된 파일을 실행하여 원하는 경로에 압축을 해제합니다.- 예시 경로:
C:\opencv
- 예시 경로:
- 2.1. 시스템 환경 변수에
OpenCV_DIR
을 추가합니다.- 변수 이름:
OpenCV_DIR
- 변수 값:
C:\opencv\build\x64\vc16\lib
- 변수 이름:
- 2.2. 해당 경로에
OpenCVConfig.cmake
파일이 있는지 확인합니다.- 존재하지 않는 경우, 해당 파일이 있는 실제 경로를 찾아 변수 값으로 설정합니다.
-
3.1.1
CMakeLists.txt
파일에 다음 내용을 작성합니다.cmake
가 사전에 설치되어 있어야 합니다. https://cmake.org/
-
cmake
cmake_minimum_required(VERSION 3.16) # OpenCV 4.11 기준 최소 버전 # 프로젝트 명 설정 project(MyOpenCVApp) # OpenCV 설정 찾기 find_package(OpenCV REQUIRED) # 실행 파일 만들기 add_executable(my_app main.cpp) # OpenCV 라이브러리 연결 target_link_libraries(my_app ${OpenCV_LIBS}) # 헤더 경로 설정 (OpenCV_INCLUDE_DIRS는 자동 포함되는 경우도 있음) target_include_directories(my_app PRIVATE ${OpenCV_INCLUDE_DIRS})
-
3.2.1
main.cpp
파일에 다음 예제 코드를 작성합니다.-
녹색 정사각형을 만드는 예제 입니다.
-
-
cpp
#include <opencv2/opencv.hpp> int main() { cv::Mat image(300, 300, CV_8UC3, cv::Scalar(0, 255, 0)); cv::imshow("Green", image); cv::waitKey(0); return 0; }
- 4.1.
Developer Command Prompt for VS 2022
를 실행합니다. (Visual Studio 2022
인 경우) - 4.2. 디버그 모드로 빌드하려면 다음 명령어를 실행합니다.
-
cmd
...\hello\build>msbuild MyOpenCVApp.sln /p:Configuration=Debug
-
- 4.3. 릴리즈 모드로 빌드하려면 다음 명령어를 실행합니다.
-
cmd
...\hello\build>msbuild MyOpenCVApp.sln /p:Configuration=Release
-
- 4.4. 또는
Visual Studio IDE
에서.sln
파일을 열어 직접 빌드할 수도 있습니다.- 비주얼 스튜디오를 사용하는 경우
include
경로,lib
경로, 실행파일 및OpenCV DLL
파일들 경로를 점검하여야 한다.
- 비주얼 스튜디오를 사용하는 경우
-
5.1. 아래 명령어를 입력하여 예제를 실행합니다.
-
cmd
...\hello\build\Release>my_app.exe
-
-
5.2. 녹색 정사각형이 표시되면
OpenCV
설정이 정상적으로 완료된 것입니다.
- 도움이 되셨으면 하단의 ❤️ 공감 버튼 부탁 드립니다. 감사합니다! 😄
- 일부 모바일 환경에서는 ❤️ 버튼이 보이지 않습니다.
728x90
반응형