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

问题描述 投票:0回答:1

我正试图从视频文件中记录一个物体(在这种情况下,由一个haar级联检测到的一部分脸部)所经过的距离。到目前为止,我有一个矩形绘制到我希望记录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()

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

python opencv haar-classifier
1个回答
1
投票

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

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

如果你想跟踪多个面,你可以看看multitracker

© www.soinside.com 2019 - 2024. All rights reserved.