首页  >  文章  >  后端开发  >  为什么在使用 OpenCV 的 CascadeClassifier 时出现“error: (-215) !empty() in function detectorMultiScale”错误?

为什么在使用 OpenCV 的 CascadeClassifier 时出现“error: (-215) !empty() in function detectorMultiScale”错误?

Linda Hamilton
Linda Hamilton原创
2024-10-25 02:14:02400浏览

Why Am I Getting the

解决函数中的“错误:(-215) !empty()”问题

错误“错误:(-215)使用 OpenCV 的 CascadeClassifier 进行人脸检测期间遇到的函数 detectorMultiScale 中的 !empty() 通常表示加载定义人脸和眼睛模式的预训练 XML 文件时出现问题。

要解决此问题,请确保 CascadeClassifier通过指定 XML 文件的适当路径来正确初始化。建议使用内置的 cv2.data.haarcascades 属性,而不是对路径进行硬编码,该属性包含这些 XML 文件的默认路径。

解决方案:

修改代码以使用 cv2.data.haarcascades 属性:

<code class="python">face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_frontalface_default.xml')
eye_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_eye.xml')</code>

此修改可确保 CascadeClassifier 加载正确的 XML 文件,而无需手动指定确切路径。通过利用内置属性,代码变得更加可移植,并消除了出现路径相关错误的可能性。

以上是为什么在使用 OpenCV 的 CascadeClassifier 时出现“error: (-215) !empty() in function detectorMultiScale”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn