ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Visual Studio 2019에서 OpenCV 4.1 사용하기
    공부(Archive)/OpenCV 2019. 7. 8. 19:47

    프로젝트를 진행하기 위해 특정 영역을 검출해낼 필요가 생겨 작년 2학기에 배웠던 OpenCV를 떠올렸다.

     

    새로 산 데스크탑에 OepnCV 환경을 새롭게 설치하며 그 과정을 써보고자 한다.

     

    1. OepnCV 설치 (https://opencv.org/)

     OpenCV 공식 홈페이지의 Releases 메뉴에 들어가보면 OpenCV - 4.1.0을 찾을 수 있다.

     

    OpenCV 공식 홈페이지의 Releases 메뉴를 누르면 가장 위에 이런 메뉴를 볼 수 있다.

     환경에 맞는 OS를 선택하고 다운로드를 받는다.

     다운로드가 완료된다면 아래의 그림과 같은 아이콘을 가진 프로그램을 볼 수 있다.

     

     해당 프로그램을 실행시켜 관련 파일들의 압축을 풀어준다.

     

     적절한 위치에 압축을 풀어주면 되는데, 이때 opencv라는 이름을 가진 폴더가 안에 있으므로 위치만 설정해주면 된다.

     뿐만 아니라 "C:\"와 같은 위치에 압축을 풀어주기 위해서는 꼭 관리자 모드로 해당 프로그램을 실행해야한다.

     

    해당 디렉토리에 가보면 이러한 폴더와 파일들이 있는 것을 확인할 수 있다.

     

    설치는 이렇게 간단하게 할 수 있다.

    이제 프로젝트에서 설치한 것들을 사용하기 위해 설정을 해보자.

     

    2. Visual Studio 2019에서 OpenCV를 사용하기 위한 설정.

     먼저 적절한 프로젝트를 생성하고 소스파일을 추가해줘야 한다.

     간단하게 테스트 해보기 위해 "빈 프로젝트"로 프로젝트를 생성하고 소스코드를 추가해보았다.

     

     프로젝트를 만들고 소스코드를 추가했다면 이제 프로젝트 속성에 들어가 설정을 해줘야 한다.

     프로젝트 속성은 "프로젝트" 메뉴의 "속성" 메뉴를 눌러 들어갈 수 있다.

     

     처음 프로젝트 속성 페이지에 들어가보면 아래와 같은 그림을 볼 수 있다.

     

     간단하게 설정을 해주기 위해 가장 위에 위치한 구성"모든 구성"으로 바꿔주고, 플랫폼"x64"로 변경해준다.

     

     가장 먼저 C/C++ 탭"추가 포함 디렉토리"자신이 OpenCV를 설치한 경로에 포함된 build\include 폴더를 추가해준다. 사실 include에는 opencv2라는 폴더가 들어있고 이 폴더 안에 모든 내용이 들어있다. 헤더를 조금 더 편하게 선언해주기 위해 opencv2 폴더도 같이 추가해줬다.

     

     다음은 링커 탭추가 라이브러리 디렉터리에 자신이 OpenCV를 설치한 경로에 포함된 build\x64\vc15\lib 폴더를 추가해준다.

     

     

     다음은 링커 탭입력에 들어가 추가 종속성lib 폴더에 있던 라이브러리들을 추가해준다. 

     아마도 debugging, release를 따로 구분해놓은 것 같지만 그냥 둘 다 추가해준다.

     

     

     설정이 다 완료되었다면 마지막으로 Visual Studio 메뉴바 밑에 있는 구성과 플랫폼을 Release와 x64로 변경해준다.

      

     

    자 이제 테스트의 시간이다.

    다음과 같은 코드를 작성하고 컴파일을 해보자.

    #include<core.hpp>
    #include<highgui.hpp>
    
    #include<cstdio>
    using namespace cv;
    using namespace std;
    int main() {
    	Mat img = imread("lenna.jpg", IMREAD_COLOR);
    	if (img.empty()) {
    		printf("이미지를 찾을 수 없음");
    		return 1;
    	}
    
    	imshow("Display", img);
    	waitKey(0);
    	return 0;
    }

    8번째 줄의 imread 함수에 "lenna.jpg"는 자신이 띄워보고자 하는 적절한 이미지를 선택해주면 된다.

    다음과 같은 결과를 확인할 수 있다.

     

    위키피디아(https://ko.wikipedia.org/wiki/%EB%A0%88%EB%82%98_(%EC%9D%B4%EB%AF%B8%EC%A7%80)

    에 따르면 레나라는 분은 플레이보이 잡지 1972년 11월자의 샌터폴드에 실린 스웨덴의 모델 렌나 쇠데르베리의 사진 일부분이라고 한다.

    특히 이 그림은 많은 종류의 영상 처리 알고리즘과 관련 과학적 출판물에서 시험용 이미지로 널리 쓰인다고 한다.

     

    프로젝트 속성이 설정된 프로젝트와 소스는 아래의 링크에서 확인할 수 있다.

    https://github.com/hyunynim/OpenCV/tree/master/InstallTest

    불러오는 중입니다...

     

    댓글

Designed by Tistory.