Files
flywms/aggiornamento-2026-05-18-15-42.md
2026-05-19 08:52:44 +02:00

2.2 KiB

Aggiornamento 2026-05-18 15:42

Obiettivo

Ripristinare OpenCV con supporto CUDA, come nel setup precedente basato sulle wheel cudawarped/opencv-python-cuda-wheels.

Situazione iniziale

Dopo la reinstallazione per riavere le finestre OpenCV, lo stato era:

OpenCV GUI: WIN32UI
OpenCV CUDA devices: 0

Quindi la GUI era tornata, ma CUDA no.

Installazione wheel CUDA

Installata la wheel:

https://github.com/cudawarped/opencv-python-cuda-wheels/releases/download/4.12.0.88/opencv_contrib_python-4.12.0.88-cp37-abi3-win_amd64.whl

Motivo della scelta:

  • il sistema ha CUDA Toolkit v12.9;
  • la release 4.12.0.88 e' compilata contro CUDA 12.9;
  • la RTX 3050 ha compute capability (8, 6), supportata dalla wheel.

Correzione config.py

Dopo l'installazione, import cv2 falliva per DLL mancanti.

Aggiornato:

C:\Python313\Lib\site-packages\cv2\config.py

Aggiunti i path alle DLL NVIDIA presenti in:

C:\Python313\Lib\site-packages\nvidia\cudnn\bin
C:\Python313\Lib\site-packages\nvidia\cublas\bin
C:\Python313\Lib\site-packages\nvidia\cuda_runtime\bin
C:\Python313\Lib\site-packages\nvidia\cufft\bin
C:\Python313\Lib\site-packages\nvidia\curand\bin
C:\Python313\Lib\site-packages\nvidia\cusolver\bin
C:\Python313\Lib\site-packages\nvidia\cusparse\bin
C:\Python313\Lib\site-packages\nvidia\nvjitlink\bin

Verifica OpenCV

Risultato:

cv2 4.12.0
GUI: WIN32UI
NVIDIA CUDA: YES (ver 12.9.86, CUFFT CUBLAS NVCUVID NVCUVENC)
cuDNN: YES (ver 9.10.2)
cuda devices: 1
gpu resize: OK
namedWindow: OK

Quindi OpenCV ora ha sia GUI sia CUDA.

Stato GPU complessivo

YOLO / Ultralytics:

torch_cuda True
NVIDIA GeForce RTX 3050

OpenCV:

CUDA attivo
cuda devices 1

PaddleOCR:

paddle 3.3.1
cuda False
device cpu

PaddleOCR resta volutamente nel virtualenv CPU per evitare il problema precedente sulle DLL/cuDNN Paddle GPU.

Nota operativa

Ora ha senso lavorare sui target:

preview/acquisizione: 24 fps
YOLO: circa 14-15 fps
OCR/WMS: asincrono, non deve bloccare la preview

OpenCV CUDA non accelera automaticamente tutto il codice: serve usare esplicitamente funzioni cv2.cuda.* nei punti in cui conviene. Pero' ora la base CUDA e' disponibile.