【发布时间】:2017-05-31 15:23:24
【问题描述】:
我需要使用序列 ID 进行面部跟踪。
示例:John 将是第一个出现 ID=1 的面孔,Mark 将成为第二个出现 ID=2 的面孔,如果 John 消失并再次出现在视频中将是 ID=3。我认为这很简单,但我无法让这样的事情发挥作用。
我有这个代码来人脸识别:
import cv2
import sys
cascPath = sys.argv[1]
faceCascade = cv2.CascadeClassifier(cascPath)
video_capture = cv2.VideoCapture(0)
while True:
ret, frame = video_capture.read()
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
faces = faceCascade.detectMultiScale(
gray,
scaleFactor=1.1,
minNeighbors=5,
minSize=(30, 30),
flags=cv2.cv.CV_HAAR_SCALE_IMAGE
)
for (x, y, w, h) in faces:
cv2.rectangle(frame, (x, y), (x+w, y+h), (0, 255, 0), 2)
cv2.imshow('Video', frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
video_capture.release()
cv2.destroyAllWindows()
但我不知道如何生成这些 ID。
【问题讨论】:
标签: python opencv scikit-learn scikit-image