미리 CUDA 11.0을 위해 빌드되어 배포되는 OpenCV 4.4.0을 다운로드 받아 Python 3.7에서 사용하는 방법을 다루고 있습니다.
2021. 1. 12 최초 작성.
2021. 5. 19 최종 작성. nppc64_11.dll, cudnn64_8.dll 파일 위치 기록
진행하기 위해선 CUDA Toolkit 11.0, cuDNN 8 설치가 필요합니다. 아래 링크를 참고하여 설치를 먼저 진행해주세요.. Windows 10에 CUDA Toolkit 11.0 cuDNN 8 Tensorflow 설치하는 방법 https://webnautes.tistory.com/1454 위 링크에선 cuDNN 버전으로 8.0.5를 사용하고 있어서 아래와 같은 경고 메시지가 보이지만 동작하는데에는 문제가 없는 듯합니다. [ WARN:0] global F:\Dev\Repos\opencv_fork_1\modules\dnn\src\cuda4dnn/init.hpp (34) cv::dnn::cuda4dnn::checkVersions cuDNN reports version 8005 which does not match with the version 8001 with which OpenCV was built |
1. https://jamesbowley.co.uk/downloads/ 에서 Python 3.7에서 사용할 수 있는 OpenCV 4.4.0을 다운로드 받아 압축을 풀어둡니다.
2. 압축을 푼 폴더에서 다음 파일들을 Python 3.7을 위한 다음 경로에 복사해주어야 합니다.
webnautes 부분은 현재 윈도우에 로그인한 사용자 이름으로 바꾸어야 합니다.
C:\Users\webnautes\AppData\Local\Programs\Python\Python37\Lib\site-packages
압축을 푼 OpenCV 폴더에서 복사해야 하는 파일들입니다.
위치 : C:\Users\webnautes\Downloads\opencv_4_4_0_cuda_11_0_py37\lib\python3
cv2.cp37-win_amd64.pyd
위치 : C:\Users\webnautes\Downloads\opencv_4_4_0_cuda_11_0_py37\install\x64\vc16\bin
opencv_videoio_ffmpeg440_64.dll
opencv_world440.dll
opencv_img_hash440.dll
위치 : C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0\bin\
nppc64_11.dll
cudnn64_8.dll
3. Python에서 OpenCV를 사용할 수 있는지 확인합니다.
cv2.__version__ 실행 결과 4.4.0이 출력되어야 하며
cv2.cuda.getCudaEnabledDeviceCount() 실행결과 1이 출력되어야 합니다.
C:\Users\webnautes>python
Python 3.7.7 (tags/v3.7.7:d7c567b08f, Mar 10 2020, 10:41:24) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>> cv2.__version__
'4.4.0'
>>> cv2.cuda.getCudaEnabledDeviceCount()
1
>>> quit()
C:\Users\webnautes>