我想在Windows 10上使用带有GPU的opencv-python。
我使用pip安装了opencv-contrib-python,版本为v4.4.0.42,同时我的电脑上也有Cuda并在路径中。
这是我尝试编译的(简单的)代码:
import cvlib as cv
from cvlib.object_detection import draw_bbox
bbox, label, conf = cv.detect_common_objects(img,confidence=0.5,model='yolov3-worker',enable_gpu=True)
output_image = draw_bbox(img, bbox, label, conf)
首先,这是一行代码告诉我tf是否支持cuda:
2020-08-26 5:51:55.718555: I tensorflow/stream_executor/platform/default/dso_loader.cc:48] Successfully opened dynamic library cudart64_101.dll
但是当我尝试使用GPU分析图像时,出现了以下情况:
[ WARN:0] global C:\Users\appveyor\AppData\Local\Temp\1\pip-req-build-j8nxabm_\opencv\modules\dnn\src\dnn.cpp (1429) cv::dnn::dnn4_v20200609::Net::Impl::setUpNet DNN module was not built with CUDA backend; switching to CPU
有没有一种方法可以在不使用cmake安装opencv的情况下解决这个问题?在Windows上太麻烦了...
python-opencv
版本,并且opencv团队也没有计划推出这样的版本。主要问题是运行cuda程序所需的运行时依赖项,以及可能涉及一些许可问题。 - Harry333Covercmake
编译它。几个月前,我不得不这样做(但是在Linux上),即使安装了最先进的gcc
和cuda
,该过程也非常简单。对于如此大的项目来说,情况并非总是如此。 - Harry333Cover