OpenCV Python Cuda CascadeClassifier错误
Posted
技术标签:
【中文标题】OpenCV Python Cuda CascadeClassifier错误【英文标题】:OpenCV Python Cuda CascadeClassifier Error 【发布时间】:2021-12-28 06:45:40 【问题描述】:我正在尝试使用 GPU 优化我在 python 中使用 OpenCV 创建的检测器。我遇到的错误如下:
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'
调用该函数时出现错误:
cv2.cuda.CascadeClassifier_create(r""+cascade_model)
在CPU版本中我使用了这个功能,它运行没有任何问题:
cv2.CascadeClassifier(r""+cascade_model)
知道为什么会这样吗?如果有帮助,我将在带有 Nvidia GeForce RTX 3070 Ti 的 Windows 10 上运行它。
【问题讨论】:
【参考方案1】:CUDA 级联分类器无法正确读取 traincascade 工具的输出。
您要么需要训练 LBP 级联(而不是 HAAR),要么回退到 2.x haartraining 工具。
见:https://github.com/opencv/opencv_contrib/issues/3106
【讨论】:
以上是关于OpenCV Python Cuda CascadeClassifier错误的主要内容,如果未能解决你的问题,请参考以下文章
OpenCV Python Cuda CascadeClassifier错误
成功构建后,带有 Cuda 的 Python OpenCV 无法正常工作
ubuntu16.04+opencv2.4.13+cuda 8.0+python
使用 Qt 和 Cuda for Python 构建 OpenCV,在 build_all cmake 目标上运行到 LNK2019