使用openCV-python记录x / y轴运动

时间:2019-03-01 12:58:16

标签: python opencv haar-classifier

我正在尝试记录视频文件中某个对象(在这种情况下,是由哈尔级联检测到的面部的一部分)行进的距离。到目前为止,我在想要记录x / y行驶数据的面部区域上绘制了一个矩形,但是一直无法找到有关如何存储面部行驶距离/方向的信息。 2个维度。我的代码如下:

import cv2
import numpy as py
from matplotlib import pyplot as plt 

face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
cap = cv2.VideoCapture("resources/video/EXAMPLE.mp4")

while True:
    ret, img = cap.read()
    gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
    faces = face_cascade.detectMultiScale(gray, 1.3, 9)
    for (x,y,w,h) in faces:
        cv2.rectangle(img, (x,y), (x+w, int(y+h/3)), (255,0,0), 2)


    cv2.imshow('img',img)
    k = cv2.waitKey(30) & 0xff
    if k == 27:
        break

cap.release()
cap.destroyAllWindows()

我将如何记录运动数据的任何信息/指针将不胜感激!

1 个答案:

答案 0 :(得分:1)

如果只想存储坐标,则可以将(x,y)元组添加到list

如果您只跟踪一张脸,则可以使用object tracking

如果要跟踪多个面孔,可以签出multitracker