1. Visual Studio 2019 설치2. CUDA 설치3. CuDNN 설치4. NVIDIA Nsight Visual Studio Edition 설치5. OpenCV 설치6. 환경 변수 설정7. NVIDIA Nsight Integration(Visual Studio Extension)설치8. yolov3 코드 다운로드9. Visual Studio 활용하기10. darknet 테스트
1. Visual Studio 2019 설치
- 현재 Yolov5는 Visual Studio 2017과 Visual Studio 2019만 지원하므로, Visual Studio 2019로 설치해야 한다.
- 설치 이후 C++를 사용한 데스크톱 개발도 설치한다.
2. CUDA 설치
3. CuDNN 설치
4. NVIDIA Nsight Visual Studio Edition 설치
5. OpenCV 설치
- Darknet에서는 OpenCV 3.4 이전 버전 설치를 권장한다.
6. 환경 변수 설정
아래의 경로를 환경 변수에 추가해준다.
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.3\bin C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.3\include C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.3\extras\CUPTI\lib64 C:\cudnn-windows-x86_64-8.7.0.84_cuda11-archive\bin C:\opencv\build\x64\vc15\bin
7. NVIDIA Nsight Integration(Visual Studio Extension)설치
8. yolov3 코드 다운로드
git clone https://github.com/pjreddie/darknet
9. Visual Studio 활용하기
- 프로젝트 실행
- darknet 폴더 안의 build/darknet/darknet.sln 파일을 실행한다.
- 프로젝트 종속성 설정
- 프로젝트에서 오른쪽 마우스 버튼을 클릭한 후, Build Dependencies/Build Customizations…을 선택한다.
- 설치한 CUDA 버전을 선택한다.
- 프로젝트 설정에서 CUDA C/C++이 활성화되는지 확인한다.
- CUDA C/C++이 활성화되지 않는다면, 다음 단계를 진행한다.
- CUDA C/C++ 활성화 (CUDA C/C++ 옵션이 활성화되어있다면 다음단계로…)
- 다음 경로의 파일을 모두 복사한다.
- 복사한 파일을 다음 경로로 모두 붙여넣기한다.
- Developer Command Prompt for VS 2019을 관리자 권한으로 실행한 후, 다음 명령어를 입력한다.
- Visual Studio를 재실행한 후에, CUDA C/C++ 옵션이 활성화되는지 확인한다.
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.3\extras\visual_studio_integration\MSBuildExtensions
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\BuildCustomizations
devenv.com /setup /nosetupvstemplates
- 프로젝트 속성
- 빌드 속성을 Release로 변경한다.
- C/C++ > General > Additional Include Directories에 opencv와 cudnn의 include 경로를 설정한다.
- Linker > General > Additional Library Directories에 opencv의 lib 경로를 설정한다.
- CUDA C/C++ > Device > Code Generation에 그래픽카드에 맞는 설정을 적용한다.
- 그래픽카드의 설정을 확인하려면 https://developer.nvidia.com/cuda-gpus에 접속한 후, CUDA-Enabled GeForce and TITAN Products을 선택한다.
- 그래픽카드의 Compute Capability의 값이 중요한데, 해당 수치가 8.6이면 compute_86,sm_86;으로 적용하면 된다.
- 빌드가 정상적으로 진행하여, dark.exe 파일이 생성되는지 확인한다.
- dark.exe 파일 경로를 환경 변수에 추가해준다.
10. darknet 테스트
- 학습 및 테스트가 정상적으로 작동되는지 확인해본다.