python - opencv 3 中缺少 detectMultiScale 函数

标签 python opencv

级联分类器报错:

  cv2.error: /Users/jenkins/miniconda/1/x64/conda-bld/work/opencv-3.1.0/modules/objdetect/src/cascadedetect.cpp:1639: 
  error: (-215) !empty() in function detectMultiScale()

代码:

imggray=cv2.imread('frame1.jpg',cv2.IMREAD_GRAYSCALE)
imgnew=cv2.equalizeHist(imggray)
print imgnew
# cascade_fn = args.get('--cascade',"../../data/haarcascades/haarcascade_frontalface_default.xml")
face_cascade = cv.CascadeClassifier('./../data/haarcascades/haarcascade_frontalface_default.xml')
print face_cascade
faces = face_cascade.HaarDetectObjects(imgnew)
for (x,y,w,h) in faces:
    cv2.rectangle(imgnew,(x,y),(x+w,y+h),(255,0,0),2)
    roi_gray = imggray[y:y+h, x:x+w]
    roi_color = imgnew[y:y+h, x:x+w]
    eyes = eye_cascade.detectMultiScale(roi_gray)
    for (ex,ey,ew,eh) in eyes:
        cv2.rectangle(roi_color,(ex,ey),(ex+ew,ey+eh),(0,255,0),2)
# cv2.imwrite('Frame2.jpg',imgnew)

按照这篇博文中的步骤查找 opencv 中可用的函数

https://www.pyimagesearch.com/2015/08/31/how-to-find-functions-by-name-in-opencv/

function list

最佳答案

我正在使用 OpenCV 3.3

>>> cv2.__version__
'3.3.0-dev'
>>> x = cv2.CascadeClassifier()
>>> x.detectMultiScale
<built-in method detectMultiScale of cv2.CascadeClassifier object at 0x7fea612cc0f0>

我喜欢这样:

enter image description here

然后我得到这个: enter image description here

关于python - opencv 3 中缺少 detectMultiScale 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47244667/

相关文章:

c++ - OpenCV-3.0 支持 OpenGL

android - 如何从图像中获取 RGB 矩阵?

python - 安装Anaconda后如何使用YCM?

python - 模块未找到错误: No module named 'tensorflow' while installing Keras for anaconda3

python - Scipy - netcdf - 数据类型不写入并获取奇怪的数字

c++ - 如何在 opencv 中屏蔽 float 垫

c# - 使用 Kinect 和 EMGU 检索点云?

python - 我如何一次获得许多帧?

python - 亚马逊 Elastic Beanstalk : how to set the wsgi path?

python - 创建一个以列表中元素的长度为键的字典