Кхм посути можно OpenCV заюзать
import cv2
# загружаем файл видео
cap = cv2.VideoCapture('video.mp4')
# создаем объект HOG для обнаружения людей
hog = cv2.HOGDescriptor()
hog.setSVMDetector(cv2.HOGDescriptor_getDefaultPeopleDetector())
# инициализируем счетчик
count = 0
# начинаем чтение видео кадр за кадром
while True:
ret, frame = cap.read()
if not ret:
break
# обнаруживаем людей на кадре
boxes, weights = hog.detectMultiScale(frame)
# рисуем прямоугольники вокруг обнаруженных людей
for box in boxes:
x, y, w, h = box
cv2.rectangle(frame, (x, y), (x+w, y+h), (0, 255, 0), 2)
# увеличиваем счетчик на количество обнаруженных людей
count += len(boxes)
# выводим количество обнаруженных людей на кадре
cv2.putText(frame, f"Count: {count}", (50, 50), cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 0, 255), 2)
# показываем кадр
cv2.imshow('frame', frame)
# останавливаем цикл, если нажата клавиша "q"
if cv2.waitKey(1) == ord('q'):
break
# освобождаем ресурсы
cap.release()
cv2.destroyAllWindows()