Алгоритм измерения скорости движущихся объектов в видео

Вы сняли видео с движущегося автомобиля с помощью камеры, оснащенной интеллектуальным мобильным телефоном. Видео имеет очень высокое разрешение и предполагает, что было выполнено некоторое кодирование без потерь. (Очевидно, размер будет огромным). Играется со скоростью 60 кадров в секунду. Какие возможные способы измерить реальную скорость автомобиля по видео? (Идеальное решение может не существовать для всех случаев, поэтому я открыт для некоторых разумных предположений при определенных условиях, если таковые имеются.).

Если это невозможно, моей следующей целью будет измерение скорости автомобиля по отношению к неподвижному объекту на видео.

Редактировать:

В моем случае камера всегда неподвижна, и машина движется слева направо и движется с постоянной скоростью.

Какой метод я уже посмотрел

Когда машина движется, я перемещаю объект (эталонный объект) перед камерой с некоторой известной скоростью. Затем на видео присутствуют как движущиеся объекты, один с известным, а другой с неизвестным. по подходящей калибровке я могу найти скорость автомобиля. Но я ищу решение, в котором мне не нужно перемещать эталонный объект.

1 ответ

Решение

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

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

Другие вопросы по тегам