簡體   English   中英

使用 OpenCV Python API 指定 GPU 設備

[英]Specify GPU device with OpenCV Python API

在使用 Tensorflow(帶 GPU 支持)處理從 OpenCV(3.4.3,使用 Python API)捕獲中提取的一些特征的項目時,每當我嘗試從捕獲中read時,都會收到來自 cuDNN 的以下錯誤在我開始 tf 會話后:

F1028 02:37:31.456640 xxxxx cudnn_conv_layer.cu:28] 檢查失敗:狀態 == CUDNN_STATUS_SUCCESS(8 對 0)CUDNN_STATUS_EXECUTION_FAILED

我想問題在於 OpenCV 和 Tensorflow 同時通過 CUDA 使用 GPU,並且 GPU 內存不足。 我目前使用的解決方法是首先使用 OpenCV 開始捕獲,然后在實際需要時啟動 tf 會話。 這樣,TensorFlow 就知道 GPU 很忙,並選擇僅使用 CPU。 但是,幀速率因此顯着下降。

考慮到我只使用 OpenCV 進行捕獲和基本預處理,我認為不需要 GPU 支持,最好讓 TensorFlow 使用 GPU。

有沒有辦法指定哪個 GPU 設備與 OpenCV Python API 一起使用(或者它是否應該使用 GPU)? 我看到 C++ API 在gpu命名空間下有一個setDevice()方法。 Python API 是否有等價物?

這是對 Python API 的等效調用,它位於“cuda”下:

cv2.cuda.setDevice(int device_id)

來源

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM