Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 我已经看了很多遍了,但是OpenCV中的detectMultiScale总是出现同样的错误_Python_Opencv - Fatal编程技术网

Python 我已经看了很多遍了,但是OpenCV中的detectMultiScale总是出现同样的错误

Python 我已经看了很多遍了,但是OpenCV中的detectMultiScale总是出现同样的错误,python,opencv,Python,Opencv,我不知道为什么会发生这种情况,因为在另一个完全相同的python文件中,同样的代码可以完美地工作 import numpy as np import cv2 as cv faceCascade = cv.CascadeClassifier('Casscades/haarcascade_frontalface_default.xml') eyeCascade = cv.CascadeClassifier('Casscades/haarcascade_eye.xml') smileCascade

我不知道为什么会发生这种情况,因为在另一个完全相同的python文件中,同样的代码可以完美地工作

import numpy as np
import cv2 as cv

faceCascade = cv.CascadeClassifier('Casscades/haarcascade_frontalface_default.xml')
eyeCascade = cv.CascadeClassifier('Casscades/haarcascade_eye.xml')
smileCascade = cv.CascadeClassifier('Casscades/haarcascade_smile.xml')

cap = cv.VideoCapture(0)

while(True):
    ret, frame = cap.read()
    gray = cv.cvtColor(frame, cv.COLOR_BGR2GRAY)

    faces = faceCascade.detectMultiScale(gray, scaleFactor=1.5, minNeighbors=5)
    eyes = eyeCascade.detectMultiScale(gray, scaleFactor=1.5, minNeighbors=5)
    smile = smileCascade.detectMultiScale(gray, scaleFactor=1.5, minNeighbors=5)

这与另一个文件中的代码完全相同,运行完全没有错误。

错误很可能意味着您的级联分类器没有正确实例化。使用:

import numpy as np
import cv2 as cv

faceCascade = cv.CascadeClassifier('Casscades/haarcascade_frontalface_default.xml')
eyeCascade = cv.CascadeClassifier('Casscades/haarcascade_eye.xml')
smileCascade = cv.CascadeClassifier('Casscades/haarcascade_smile.xml')

cap = cv.VideoCapture(0)

while(True):
    ret, frame = cap.read()
    gray = cv.cvtColor(frame, cv.COLOR_BGR2GRAY)

    faces = faceCascade.detectMultiScale(gray, scaleFactor=1.5, minNeighbors=5)
    eyes = eyeCascade.detectMultiScale(gray, scaleFactor=1.5, minNeighbors=5)
    smile = smileCascade.detectMultiScale(gray, scaleFactor=1.5, minNeighbors=5)
检查分类器是否正确实例化。如果返回true,则
1-xml文件的路径不正确。
2-您的xml文件不正确
3-由于某种原因,无法加载xml文件

如果确定文件和路径正确,请尝试使用以下命令再次加载:

faceCascade.empty()

omfg thx,我的xml文件路径有一个输入错误:(
faceCascade.empty()
faceCascade.load('PATH_TO_XML')