2012-05-25 3 views
1

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

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

Edit:

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

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

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

+0

Это очень сложный вопрос. Вам нужно будет подумать о том, движется или неподвижна камера, и какие существуют ограничения. Если автомобиль всегда перемещается влево-вправо на фиксированном расстоянии, то это более простая проблема (сколько пикселей она перемещается за кадр). Если автомобиль может двигаться в любом направлении (например, к камере), вам потребуется какая-то трехмерная информация. Можете ли вы дать более подробную информацию о ваших конкретных ограничениях и о том, какие методы вы уже рассмотрели? – Chris

ответ

1

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

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

+0

Что вы подразумеваете под «на фиксированном расстоянии»? – gpuguy

+0

Я имею в виду, что во время отслеживания транспортное средство не приближается или находится далеко от камеры, это означает, что любое обнаруженное движение будет скоррелировано для скорости в любой точке изображения. Если автомобиль движется к камере с постоянной скоростью, по мере приближения, он станет больше, и чем больше пикселей будет проходить за кадр. Я бы предложил сделать некоторые эксперименты и выяснить, что работает для вашего дела. – Chris

Смежные вопросы