Я пытаюсь заставить привязки OpenCV python работать с CUDA, но когда я запускаю
import cv2
, я получаю следующую ошибку:
OpenCV loader: os.name="nt" platform.system()="Windows"
OpenCV loader: loading config: C:\opencv\build\python_loader\cv2\config.py
OpenCV loader: loading config: C:\opencv\build\python_loader\cv2\config-3.8.py
OpenCV loader: PYTHON_EXTENSIONS_PATHS=['C:/opencv/build/lib/python3/Release']
OpenCV loader: BINARIES_PATHS=['C:/opencv/build/bin/Release']
OpenCV loader: PATH=C:/opencv/build/bin/Release;C:\Program Files\Python38\Scripts\;C:\Program Files\Python38\;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\bin;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\libnvvp;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\CCM;C:\WINDOWS\CCM;C:\Perl64\c\bin;C:\Perl64\perl\site\bin;C:\Perl64\perl\bin;C:\WINDOWS\CCM;C:\WINDOWS\CCM;C:\WINDOWS\CCM;C:\Program Files\PuTTY\;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\110\Tools\Binn\;C:\Program Files (x86)\Microsoft SQL Server\120\Tools\Binn\;C:\Program Files\Microsoft SQL Server\120\Tools\Binn\;C:\Program Files\Microsoft SQL Server\120\DTS\Binn\;C:\Program Files (x86)\Windows Kits\8.1\Windows Performance Toolkit\;C:\Program Files\Git\cmd;C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\bin;C:\Program Files\nodejs\;C:\Program Files (x86)\Yarn\bin\;C:\Program Files\NVIDIA Corporation\Nsight Compute 2019.5.0\;C:\opencv\build\install\x64\vc16\bin\;C:\Users\md249\AppData\Local\Microsoft\WindowsApps;
OpenCV loader: replacing cv2 module
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\opencv\build\python_loader\cv2\__init__.py", line 96, in <module>
bootstrap()
File "C:\opencv\build\python_loader\cv2\__init__.py", line 86, in bootstrap
import cv2
ImportError: DLL load failed while importing cv2: The specified module could not be found.
У меня есть следующее Переменные среды установлены:
OPENCV_DIR: C:\opencv\build\
PATH: $PATH;C:\opencv\build\install\x64\vc16\bin\;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\bin
Похоже, что OpenCV создает двоичные файлы для нескольких разных каталогов по непонятным мне причинам, поэтому я не уверен, куда указывать PATH и OPENCV_DIR.
Запуск Dependency Walker значение cv2.cp38-win_amd64.pyd
не указывает на отсутствующие зависимости от OpenCV или CUDA.
.pyd динамически загружает какие-либо другие зависимости, которые может не отловить Dependency Walker? Приложения C ++ прекрасно загружают OpenCV, поэтому я думаю, что проблема связана с тем, где расширение .pyd ищет зависимости.
Надеюсь, я включил всю необходимую информацию.