Opencv 최신 버전(4.10.0) 환경설정하기
1. Opencv 최신 버전(4.10.0) 환경설정
#
1.1 프로젝트 만들기
먼저 opencv를 설치합니다.
https://opencv.org/
visual studio의 새 프로젝트 만들기에서 콘솔앱을 선택합니다.

visualstudio에서 새프로젝트 만들기
세프로젝트를 만들떼 솔루션을 같은 디렉토리에 설정 체크가 되어있어야합니다.

1.2 프로젝트 속성 환경설정
창 상단에 다음 상태임을 확인합니다.

프로젝트폴더의 오른쪽클릭 → 속성

다음이 설정되어있는지 확인합니다.

1.2.1 c++ 일반 메뉴 선택
왼쪽의 C/C++ 메뉴 클릭


다음을 입력합니다,
F:\Program Files\opencv\build\include
1.2.2 왼쪽의 링커-일반 메뉴 선택

추가 라이브러리 디렉터리에 다음을 입력합니다.
F:\Program Files\opencv\build\x64\vc16\lib

1.2.3 링커-입력 메뉴 클릭

추가 종속성에 다음을 입력합니다.
opencv_world4100d.lib
(F:\Program Files\opencv\build\x64\vc16\lib 경로의 파일을 확인후 복붙합니다)
//d.lib 파일임을 주의합니다.
그리고 코드를 실행해봅니다.

1.2.4 d.dll파일 복사붙여넣기
F:\Program Files\opencv\build\x64\vc16\bin 경로에서
다음 d.dll파일을

프로젝트 파일에 붙여 넣기 합니다.
F:\2024_selfcode\cpp_study_vsstudio\opencv_study_Project\opencv_study_Project\x64\Debug
기본 환경설정은 완료되었습니다.
2. 테스트하기
#include <iostream>
#include <opencv2/opencv.hpp>
int main()
{
// 프로그램 시작 메시지
std::cout << "프로그램이 시작되었습니다." << std::endl;
// OpenCV 버전 출력 (OpenCV 설치 여부 확인)
std::cout << "OpenCV 버전: " << CV_VERSION << std::endl;
// 더미 이미지 생성 (imread와 유사한 방식으로 Mat 객체 생성 테스트)
cv::Mat dummyImage = cv::Mat::zeros(100, 100, CV_8UC3); // 100x100 크기의 검정색 이미지
// dummyImage의 생성 여부 확인
if (dummyImage.empty()) {
std::cerr << "Error: 더미 이미지를 생성하는 데 실패했습니다." << std::endl;
return -1;
}
else {
std::cout << "더미 이미지가 성공적으로 생성되었습니다!" << std::endl;
std::cout << "이미지 크기: " << dummyImage.cols << " x " << dummyImage.rows << std::endl;
}
// 더미 이미지(검정색 화면)를 표시
cv::imshow("검정색 화면", dummyImage);
// 키보드 입력 대기 (아무 키나 누르면 창이 닫힘)
cv::waitKey(0);
// imread 함수 테스트 (빈 문자열 전달하여 함수 오류 처리 확인)
cv::Mat testMat = cv::imread(""); // 잘못된 경로로 imread 테스트
if (testMat.empty()) {
std::cout << "imread가 빈 파일을 처리할 때 올바르게 실패했습니다." << std::endl;
}
else {
std::cerr << "Error: imread가 빈 파일 경로를 처리하는데 실패했습니다." << std::endl;
return -1;
}
// 프로그램 정상 종료 메시지
std::cout << "프로그램이 정상적으로 종료되었습니다." << std::endl;
return 0;
}
다음과 같이 정상적으로 작동합니다.

3. 상대경로 이미지 불러와서 열어보기
프로젝트 폴더안에 images라는 폴더를 만들고 sample.jpg파일을 넣습니다.

#include <iostream>
#include <opencv2/opencv.hpp>
int main()
{
// 상대 경로 사용 (프로젝트 폴더 내의 images 폴더에 이미지가 있다고 가정)
std::string filePath = "images/sample.jpg"; // 실행 파일이 있는 경로 기준으로 상대 경로 사용
// 프로그램 시작 메시지
std::cout << "프로그램이 시작되었습니다." << std::endl;
// 파일 경로 출력
std::cout << "이미지 파일 경로: " << filePath << std::endl;
// 이미지 불러오기 시도
cv::Mat src = cv::imread(filePath, cv::IMREAD_UNCHANGED);
// 이미지 로드 성공 여부 확인
if (src.empty()) {
std::cerr << "Error: OpenCV에서 이미지를 불러올 수 없습니다! 경로를 확인하세요." << std::endl;
return -1;
}
else {
std::cout << "이미지를 성공적으로 불러왔습니다!" << std::endl;
std::cout << "이미지 크기: " << src.cols << " x " << src.rows << std::endl;
}
// 이미지 화면에 표시
cv::imshow("Loaded Image", src);
// 키보드 입력을 대기
cv::waitKey(0);
return 0;
}
다음과 같이 sample.jpg가 뜨는것을 확인할 수 있습니다.

댓글남기기