OpenCV 공식 사이트에서 미리 빌드되어 배포되는 윈도우용 라이브러리를 Visual Studio 2017에서 사용하기 위해 필요한 과정을 설명합니다.
OpenCV 공식 사이트에서 Win pack을 클릭하여 다운로드 받습니다.
http://opencv.org/releases.html
github에서도 다운로드 가능합니다.
https://github.com/opencv/opencv/releases
opencv-3.4.0-vc14_vc15.exe 이름의 파일이 다운로드 됩니다
이름에서도 알수 있듯이 이제는 vc14(Visual Studio 2015) 외에 vc15(Visual Studio 2017)도 미리 빌드된 라이브러리가 제공됩니다.
실행하면 압축을 해제할 경로를 물어보는데 우선은 다운로드 받은 폴더로 지정해주었습니다.
Extract를 클릭하면 압축 해제가 시작됩니다.
opencv 폴더가 생성됩니다.
opencv 폴더는 미리 빌드된 라이브러리가 포함되어 있는 build 폴더와 OpenCV 3.4 소스 코드가 포함되어 있는 sources 폴더로 구성되어 있습니다.
opencv 폴더 이름을 opencv-3.4로 변경하고 C:로 복사했습니다.
포스팅에서는 OpenCV 라이브러리 위치가 C:opencv-3.4인 것으로 하고 진행하겠습니다.
1. 비주얼스튜디오의 메뉴에서 파일 > 새로 만들기 > 프로젝트를 선택합니다.
2. 새 프로젝트 창에서 빈 프로젝트를 선택합니다.
(예전에 있던 Win32 콘솔 프로젝트가 Visual Studio 버전업에 따라 사라져서 대신 빈 프로젝트를 사용합니다.)
프로젝트 이름을 적어주고 확인을 클릭합니다.
3. 솔루션 탐색기에서 소스 파일을 선택합니다.
마우스 오른쪽 버튼을 눌러 보이는 메뉴에서 추가 > 새 항목을 클릭합니다.
C++ 파일(.cpp)를 선택하고 소스 파일의 이름을 적고 추가를 클릭합니다.
(이름을 바꾸지 않아도 됩니다.)
소스 파일 항목에 cpp 파일이 추가됩니다.
4. 솔루션 플랫폼을 x64로 변경합니다.
x86용이 필요시 OpenCV 소스 코드를 x86에 맞추어 컴파일해줘야 합니다.
5. 솔루션 탐색기에서 프로젝트 이름을 선택하고 메뉴에서 프로젝트 > 속성을 선택합니다.
속성 페이지 창에서 구성을 모든 구성으로 변경합니다.
Debug 모드와 Release 모드의 공통 부분이 같이 설정됩니다.
속성 페이지 창에서 C/C++를 선택하고 추가 포함 디렉터리 항목에 OpenCV 헤더 파일 위치를 입력합니다.
C:opencv-3.4buildinclude
속성 페이지 창에서 링커를 선택하고 추가 라이브러리 디렉터리 항목에 OpenCV 라이브러리 파일 위치를 입력합니다.
C:opencv-3.4buildx64vc15lib
속성 페이지 창에서 구성 속성 > 디버깅을 선택하고 환경 항목에 OpenCV 라이브러리 DLL 파일 위치를 입력합니다.
PATH=C:opencv-3.4buildx64vc15bin;%PATH%
구성을 활성(Debug)로 변경하고
예를 눌러서 설정을 저장합니다.
링커 > 입력을 선택하고 추가 종속성의 값 맨앞에 다음 내용을 입력합니다.
opencv_world340d.lib;
구성을 Release로 변경하고
예를 눌러서 설정을 저장합니다.
링커 > 입력을 선택하고 추가 종속성의 값 맨앞에 다음 내용을 입력합니다.
opencv_world340.lib;
이제 확인을 눌러서 설정창을 닫습니다.
6. 다음 경로에 있는 소스 코드를 테스트에 사용합니다.
C:opencv-3.4sourcessamplescppvideocapture_basic.cpp
|
/** |
프로젝트의 소스 파일에 해당 코드를 복사해옵니다.
F5를 눌러서 컴파일 및 실행시켜 봅니다.
툴바에서 솔루션 구성이 Debug / Release 로 설정되어 있을 때, 각각 문제 없이 동작하는지 확인해봅니다.
참고로 F5를 눌러서 실행하면 디버거와 함께 프로그램이 실행되고, Ctrl + F5를 눌러서 실행하면 프로그램만 실행됩니다.
프로그램에 문제가 있어서 breakpoint( 브레이크포인트, 중단점)을 설정했다면 F5를 눌러서 실행하셔야 합니다.
문제 없다면 웹캠으로부터 캡처된 영상을 보여주는 윈도우가 보입니다.
가급적이면 백신의 실시간 보호 기능을 끄는게 좋습니다.
빌드할 때 실행파일을 검사하기 때문에 번거롭습니다.
일부 백신에서는 차단해버려서 실행이 제대로 안되기도 합니다.
댓글 0
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
|---|---|---|---|---|
| 51 | [아두이노] 장애물 감지 자율주행 자동차 | proin | 2018.05.14 | 1 |
| 50 | [아두이노] DC 모터의 제어(모터드라이버 L298N) 1편 | proin | 2018.05.14 | 3 |
| 49 | 아두이노 탱크 연결 사진 | proin | 2018.05.14 | 2 |
| 48 | 오픈소스 + 알고리즘 | proin | 2018.05.14 | 1 |
| 47 | OpenCV #7-2 Example (허프 변환으로 영상 내 선 감지) | proin | 2018.05.14 | 0 |
| 46 | 롤 모델 | proin | 2018.05.14 | 2 |
| 45 | 사진에서 엣지 따오는 소스 | proin | 2018.05.14 | 1 |
| 44 | 카메라 여는 소스 | proin | 2018.05.14 | 1 |
| » | Visual Studio 2017에서 OpenCV 3.4를 사용하는 방법 | proin | 2018.05.14 | 0 |
| 42 | 모터 돌리는 소스 | proin | 2018.05.14 | 2 |
| 41 | project | proin | 2018.05.14 | 1 |
| 40 | [25호]DIY 프로젝트 공모전- 차선 인식을 통한 차량의 능동적 안전시스템 개발 | proin | 2018.05.14 | 1 |
| 39 | [Web] PHP 로그인/로그아웃/회원가입 {원본} | proin | 2018.05.14 | 1 |
| 38 | html 출력 {원본} | proin | 2018.05.14 | 1 |
| 37 | 세션을 사용한 PHP 로그인/로그아웃 소스 {원본} | proin | 2018.05.14 | 1 |
| 36 | 세션을 사용한 PHP 로그인/로그아웃 소스 | proin | 2018.05.03 | 2 |
| 35 | html 출력 | proin | 2018.05.02 | 1 |
| 34 | 옥션 로그인 부분 소스 | proin | 2018.05.02 | 0 |
| 33 | XML과 DB | project2018 | 2018.05.02 | 3 |
| 32 | 컨버터 | proin | 2018.05.02 | 0 |