Windows 10上のGPUでOpenCV-Pythonを使用しようとしています。
PIPを使用してOpenCV-CONTRION-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の混乱です...
同じ問題を得ることができる人のために。ハリーに言及したように、PIPからOpenCVでGPUを使用することはできません。「手動で」CMAKE(Windows用)を使用して構築する必要があります。
それは少し難しいですが、あなたを助けるためにここにいる多くのチュートリアルがあります。私はCVLIBを作るために2日間過ごしました、そしてそれがなぜNvidiaのWebサイトから監督されたcudnn.dllの1つは命名されています:
Cudnn64_8.dll.
そしてOpenCV(またはより正確になるテンソルフロー)の必要性
Cudnn64_7.dll.
実際、あなたはちょうど8から7を交換する必要があります! ;)それは唯一の硬い部分でした、そして私はそれがCmakeプロセスから来たと信じていました。
もう一度ハリーをありがとう。