Build OpenCV 4.5.1 with CUDA (GPU) Support on Windows 10 (Python 3.8)
1. Anaconda 설치 : 기본적인 패키지들을 포함한 개발환경을 구축하기 위해 아나콘다를 설치
2. 가상환경 구성 : 해당 가이드에서는 Python 3.8으로 환경구성을 권장 (OpenCV, cuda, cuDNN 버전을 고려하여 Python 3.8로 환경을 구성할 것을 권장함)
(base) C:\> conda create -n vision_py38_env python=3.8
(base) C:\> conda activate vision_py38_env
## numpy 설치
(vision_py38_env) C:\> pip install numpy
3. NVIDIA CUDA 드라이버, CUDA 툴킷 및 cuDNN 설치
3.1 GPU Nvidia driver 설치 : 그래픽드라이버를 검색하여 다운로드 후 설치 진행
3.2 CUDA 설치 : 버전을 선택하여 다운로드 후 설치 진행 (저는 최신버전인 11.2.0 으로 진행)
3.3 cuDNN 설치 : cuDNN 은 zip파일로 다운받아지는데, 압축 풀어 모두 복사 후 'C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2' 경로에 붙여넣기
4. Visual Studio 2019 설치
4.1 link 다음링크에서 Visual Studio Community 2019 Download
4.2 설치파일을 클릭하여 설치 수행
4.3 Visual C++ / python / web development tools 선택
5. CMake 설치
5.1 https://cmake.org/download/ 에서 v3.19.4 다운로드
5.2 'add cmake to the system PATH for the current user' 선택
6. opencv-4.5.1 와 opencv_contrib-4.5.1 다운로드 및 압축풀기
6.1 https://github.com/opencv/opencv/releases 에서 opencv-4.5.1 source code zip 다운로드
6.2 https://github.com/opencv/opencv_contrib/releases 에서 opencv_contrib-4.5.1 source code zip 다운로드 (버전이 opencv 버전과 동일해야함)
6.3 다운받은 두 파일을 동일한 폴더에 압축해제 (이후 설정에도 사용되는 경로이니 지속적으로 사용할 경로에 압축을 해제) - opencv-4.5.1 폴더가 곧 OPENCV_PATH (ex) [ C:\opencv\opencv-4.5.1 ])
7. CMake를 이용한 비쥬얼스튜디오 프로젝트 생성
7.1 CMake 실행
7.2 소스코드 C:\opencv\opencv-4.5.1 입력 및 빌드폴더 C:\opencv\opencv-4.5.1\build 입력
7.3 configure 실행 및 확인누름
7.4 Visual Studio 16 2019 선택후 Finish
8. CMake config에 추가적인 수정
8.1 “INSTALL_PYTHON_EXAMPLES” 선택 (빌드 시간을 최소화하기 위해 불필요한건 체크해제)
8.2 WITH_CUDA, OPENCV_DNN_CUDA, ENABLE_FAST_MATH, CUDA_FAST_MATH 체크 (Search창을 이용)
8.3 OPENCV_EXTRA_MODULES_PATH 항목에 C:/opencv/opencv_contrib-4.5.1/modules 입력 후 다시 configure 실행
8.4 WITH_CUDNN, WITH_CUBLAS 체크 (이미 체크되어 있다면 다음으로 진행)
8.5 그래픽카드 확인 (장치관리자에서 자신의 그래픽카드를 확인)
8.6 CUDA_ARCH_BIN 설정 (중요 - 자신의 그래픽카드에 해당하는 CUDA_ARCH_BIN 을 설정해야 함)
- 여기 에서 GPU 모델과 호환되는 컴퓨팅 아키텍처 목록을 찾을 수 있습니다.
8.7 Python 관련 설정 (자신이 구성한 가상환경의 경로로 설정)
9. 빌드파일 생성하기
9.1 만약 CMAKE가 에러없이 Configuring done 메시지를 띄웠다면 generate를 클릭
9.2 빌드 폴더로 이동하여 Visual Studio로 OpenCV.sln 파일 열기
9.3 Debug 를 상단에서 Release 로 변경
9.4 Cmake Targets를 확장하여 ALL_BUILD 우클릭 후 Build (컴퓨터의 성능에 따라 오래 걸릴 수 있습니다. 30분 이상)
9.5 완료되면 INSTALL 우클릭 후 Build 클릭
9.6 가상환경에 다음과 같이 구성되었다면 정상적으로 설치 완료
10. 마치며...
Windows에서 환경을 구성하는게 쉽지가 않네요. 그리고 Build하는데 시간이 많이 소요되네요. Ninja로 빌드 시간을 단축 할 수 있다니, 그렇게 해보시는 것도 좋을 듯 싶네요. 고생했지만 성능이 좋아져서 다행입니다.
11. Truble Shooting
- "warning: setUpNet DNN module was not built with CUDA backend; switching to CPU" 라고 나온다면 OpenCV 설치가 잘못된 것입니다. pip uninstall opencv-python 수행 후 Build를 통해 설치가 되어야 합니다.
- "ModuleNotFoundError: No module named 'cv2'" 는 Build를 통한 opencv 파일이 아닙니다. pip uninstall opencv-python 수행 후 Build를 통해 설치가 되어야 합니다.
- 최초에는 Python 3.7로 환경을 구성했는데, Python Library가 자동으로 3.8로 변경되어 문제가 있었는데 Python 3.8환경으로 구성 후 해결되었습니다.
'Tech & Development > 개발환경' 카테고리의 다른 글
파이썬 패키지 PIP로 오프라인 설치 (폐쇄망) (2) | 2021.03.04 |
---|---|
[Python] Requests와 Fiddler 동시 사용 (Jupyter notebook) (0) | 2021.02.18 |
Pycharm 설치 (Mac OS) (0) | 2021.01.29 |
Anaconda3 설치 (Mac OS) (0) | 2021.01.29 |
Pycharm 설치 (Windows) (0) | 2021.01.29 |
댓글
이 글 공유하기
다른 글
-
파이썬 패키지 PIP로 오프라인 설치 (폐쇄망)
파이썬 패키지 PIP로 오프라인 설치 (폐쇄망)
2021.03.04 -
[Python] Requests와 Fiddler 동시 사용 (Jupyter notebook)
[Python] Requests와 Fiddler 동시 사용 (Jupyter notebook)
2021.02.18 -
Pycharm 설치 (Mac OS)
Pycharm 설치 (Mac OS)
2021.01.29 -
Anaconda3 설치 (Mac OS)
Anaconda3 설치 (Mac OS)
2021.01.29