树莓派3 Python面部识别



我收到一个detectMultiScale错误。我确保指定了文件的完整路径。我的目标是进展到实时目标识别和跟踪。

import numpy as np
import cv2
face_cascade = cv2.CascadeClassifier('/home/pi/opencv-3.1.0/data/haarcascades/haarcascade_frontalface_default.xml')
eye_cascade = cv2.CascadeClassifier('/home/pi/opencv-3.1.0/data/haarcascades/haarcascade_eye.xml')
face_cascade.load('haarcascade_frontalface_default.xml')
img = cv2.imread('/home/pi/cam.jpg',1)
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY,0)
faces = face_cascade.detectMultiScale(gray, 1.3, 5)
for (x,y,w,h) in faces:
    img = cv2.rectangle(img,(x,y),(x+w,y+h),(255,0,0),2)
    roi_gray = gray[y:y+h, x:x+w]
    roi_color = gray[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.imshow('img',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

错误代码

Traceback (most recent call last):
  File "/home/pi/face.py", line 11, in <module>
    faces = face_cascade.detectMultiScale(gray, 1.3, 5)
error: /home/pi/opencv-3.1.0/modules/objdetect/src/cascadedetect.cpp:1639: error: (-215) !empty() in function detectMultiScale

OpenCV方式:

您需要HAAR级联参数的文件。有时需要下载,默认情况下不提供。这个问题可能会给你提示在哪里可以找到它们。

"脸recognition"模块

dlib现在是用于人脸提取的haar-cascade的事实上的c++库。

python中的人脸识别模块包装了dlib,可以同时处理人脸检测和识别。

https://pypi.org/project/face-recognition/

相关内容

  • 没有找到相关文章

最新更新