Можно ли рассчитать скорость по изображению?

Мне интересно, возможно ли рассчитать скорость (по оси Y) человека, только имея время в миллисекундах с начала последовательности и различные кадры, содержащие человека, движущегося в сцене. Вот так например:

введите описание изображения здесь

0

Решение

Вместо использования данных о глубине вы можете активировать отслеживание скелета и отслеживать положение сустава головы: это даст вам лучшие результаты. Положение суставов в отслеживании скелета Kinect дано в метрах, поэтому просто вычислите расстояние от положения головы в текущем кадре и положение головы в предыдущем кадре и поделите на время, прошедшее в секундах (не забудьте разделить миллисекунды на 1000 ) должен дать вам скорость в метрах в секунду.

Если невозможно активировать отслеживание скелета, вы можете найти самый высокий пиксель на изображении, принадлежащем пользователю (данные глубины Kinect включают эту информацию, или, если у вас нет данных глубины, используйте самый высокий не черный пиксель в вашем изображении). изображения), а затем сопоставить его с трехмерным мировым пространством, используя систему координат Kinect SDK. Затем рассчитайте скорость, как указано выше.

Это даст вам скорость для каждого кадра; чтобы найти общую скорость, вы можете усреднить последние 30 скоростей или около того (это даст вам среднюю скорость пользователя за последнюю секунду, которая должна изменяться более плавно, чем значение для каждого кадра).

1

Другие решения


По вопросам рекламы [email protected]