본문 바로가기
  • 경제적 자유를 얻는 그날까지
엔지니어링/인공지능

[ YOLO ] Windows 버전 설치 환경 구성하기

by 베니스상인 2021. 6. 17.

 

YOLO를 윈도우즈 환경에서 구동하기 위한 개발환경을 구성해본다.

 

먼저 필자의 하드웨어 구성은 아래와 같다.

CPU: i7-8700 3.2GHz

RAM: 16GB

OS: Windows 10 64비트 운영체제

Graphics: Geforce GTX 1070 8GB

 

 

개발환경을 구축하기 위한  SW 버전들은 서로 호환성이 있는 버전들도 구성해야 한다. 

필자가 구성한 SW의 개발 버전은 아래와 같다.

Vusial Studio 2017

CUDA 11.3

cuDNN 8.3

OpenCV 3.14

 

 

1. Visual Studio 설치

 

다운로드는 아래 경로에서 할 수 있다.

https://my.visualstudio.com/Downloads?q=visual%20studio%202017&wt.mc_id=o~msft~vscom~older-downloads 

 

Azure DevOps Services | 로그인

현재 사용자 환경에서 Microsoft Internet Explorer의 보안 강화 구성이 사용하도록 설정되어 있습니다. 이 보안 강화 수준으로 인해 웹 통합 환경이 정상적으로 표시되거나 작동할 수 없습니다. 작업을

app.vssps.visualstudio.com

 

다운로드 페이지에서 무료 사용이 가능한 Vusial Studio Community 2017를 선택하여 설치하였다.

 

 

 

2. CUDA toolkit 11.3 설치

 

아래 사이트에서 다운받을 수 있다.

https://developer.nvidia.com/cuda-downloads?target_os=Windows&target_arch=x86_64&target_version=10&target_type=exe_network 

 

CUDA Toolkit 11.3 Update 1 Downloads

Resources CUDA Documentation/Release NotesMacOS Tools Training Sample Code Forums Archive of Previous CUDA Releases FAQ Open Source PackagesSubmit a Bug

developer.nvidia.com

 

 

설치할 때 Target Platform을 아래와 같이 선택한다.

Operating System : Windows

Architecture : x64

OS Version : 10

설치완료되면 설치과정에서 선택한 폴더에 CUDA 폴더가 생성된다.

필자의 경우 아래 경로에 설치되어 있다.

 

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.3

 

 

 

3. cuDNN 8.3 다운로드

 

cuDNN은 Ndivia의 CUDA 전용 Deep learning Neural Network 라이브러리이다.  아래에서 다운받을 수 있다.

https://developer.nvidia.com/rdp/cudnn-archive

 

cuDNN Archive

NVIDIA cuDNN is a GPU-accelerated library of primitives for deep neural networks.

developer.nvidia.com

 

 

CUDA 11.3 과 매칭되는 버전이 v8.2 이므로 v8.2 중에서도 cnDNN Library for Windows(x86)을 선택한다.

 

다운받은 파일의 압축을 풀고 아래 세 폴더의 파일들을 CUDA가 설치된 경로의 같은 이름의 하위폴더에 각각 복사해준다.

 

 

 

 

4. OpenCV 다운로드

OpenCV는 3.4.8 버전을 사용하고 guthub에서 다운로드한다. github에서 오른쪽 Code 아래쪽에 Donwload ZIP를 선택하면 master버전을  다운로드할 수 있다.

 

https://github.com/opencv/opencv/tree/3.4.8

 

opencv/opencv

Open Source Computer Vision Library. Contribute to opencv/opencv development by creating an account on GitHub.

github.com

 

OpenCV는 라이브러리이므로 별도의 설치가 필요없고, 압축을 풀어서 적절한 위치에 복사해둔다. 

 

 

5. YOLO 다운로드(Darknet) 

YOLO 학습 및 테스트를 위해  Darknet을 소스를 다운로드한다. Darknet은 아래 github에서 다운받을 수 있다.

 

https://github.com/AlexeyAB/darknet

 

AlexeyAB/darknet

YOLOv4 / Scaled-YOLOv4 / YOLO - Neural Networks for Object Detection (Windows and Linux version of Darknet ) - AlexeyAB/darknet

github.com

 

 

 

6. Darknet 빌드 환경 구성 

 

darknet 프로젝트에서 darknet.sln 파일을 실행하여 Visual Studio에 프로젝트를 로딩한다.

 

Visual Studio 프로젝트에서 오른쪽 솔루션 탐색기 -> 빌드 종속성 -> 사용자 지정 빌드를 선택한다.

 

 

 

Visual C++ 빌드 사용자 지정 파일에서 CUDA 11.3을 선택한다.

 

 

 

프로젝트 -> 속성-> C/C++ -> 추가 포함 디렉터리를 선택하고 오른쪽 탭을 눌러 편집을 선택한다.

 

 

opencv에 대한 경로를 현재 다운로드 받은 opencv의 include가 있는 경로를 확인하여 수정해준다.  

 

 

 

프로젝트 -> 속성-> Linker -> 추가 포함 디렉터리를 선택하고 오른쪽 탭을 눌러 편집을 선택한다.

 

마찬가지로 opencv의 lib 대한 경로를 확인하여 수정해준다.  

 

 

 

프로젝트 -> 속성-> CUDA C/C++ -> Code Generation을 선택하고 오른쪽 탭을 눌러 편집을 선택한다.

 

여기서 compute_xx, sm_xx는 CUDA에서 사용할  GPU의 Compute Capability인데 본인의 GPU에 맞는 사양을 확인하여 입력해야한다.

 

 GPU의 Compute Capability는 아래에서 확인할 수 있다.

https://developer.nvidia.com/cuda-gpus

 

CUDA GPUs

Your GPU Compute Capability Are you looking for the compute capability for your GPU, then check the tables below. NVIDIA GPUs power millions of desktops, notebooks, workstations and supercomputers around the world, accelerating computationally-intensive ta

developer.nvidia.com

 

본인의 그래픽카드는 CUDA-Enabled GeForce에 속하며 아래와 같이 확인할 수 있다.

Geforce GTX 1070 : 6.1

 

확인된 값을 소수점을 생략하고 Code Generation 맞게 입력한다.

 

 

 

그리고 마지막으로 OpenCV 폴더에서 아래 라이브러리들을 Darket의 해당 폴더로 복사해준다. 파일명 뒤 숫자는 버전에 따라 달라질 수 있다.

Opencv_world3414.dll. Opencv_world3414d.dll, opencv_ffmpeg3414.dll

 

 

darket의 아래 폴더로 복사해준다.

darknet-master-> build -> darknet -> x64

 

이제 프로젝트에서 빌드를 실행한다.

빌드시 환경은 Release. x64로 선택한다.

빌드가 정상적으로 완료되면 Release 폴더에 darknet.exe가 생성된어 있다.

 

 

 

 

 

 

728x90

댓글