Marcos Severt Silva
Marcos Severt Silva

Reputation: 359

OpenCV Python Cuda CascadeClassifier Error

I am trying to optimize my detector created with OpenCV in python using the GPU. The error I am encountering is the following:

cv2.error: OpenCV(4.5.1) c:\opencv_build\opencv_contrib-4.5.1\modules\cudalegacy\src\cuda\ncvhaarobjectdetection.cu:2079: error: (-215:Assertion failed) haar.ClassifierSize.height > 0 && haar.ClassifierSize.width > 0 in function 'loadFromXML'

The error arises when calling this function:

cv2.cuda.CascadeClassifier_create(r""+cascade_model)

In the CPU version I use this function and it works without any problems:

cv2.CascadeClassifier(r""+cascade_model)

Any idea why this is happening? In case it helps, I'm running it on Windows 10 with an Nvidia GeForce RTX 3070 Ti.

Upvotes: 0

Views: 601

Answers (1)

berak
berak

Reputation: 1374

the CUDA cascade classifier cannot read the output from the traincascade tool properly.

you either need to train an LBP cascade (instead of HAAR), or fall back to the 2.x haartraining tool.

see: https://github.com/opencv/opencv_contrib/issues/3106

Upvotes: 1

Related Questions