Стабилизация видео

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

Пример модели

Следующий рисунок показывает модель стабилизации видео:

Подсистема оценочного движения

Модель использует блок Template Matching, чтобы переместить цель по области поиска и вычислить сумму абсолютных различий (SAD) в каждом месте. Местоположение с самым низким значением SAD соответствует местоположению цели в видеокадре. На основе информации о местоположении модель вычисляет вектор перемещения между целью и ее исходным местоположением. Блок Translate в Подсистеме Стабилизации использует этот вектор, чтобы сдвинуть каждую систему координат так, чтобы движение камеры было удалено из видеопотока.

Отображение подсистемы результатов

Модель использует блоки Resize, Compositing и Insert Text, чтобы встраивать увеличенную цель и ее вектор перемещения в исходное видео.

Результаты стабилизации видео

На рисунке слева показано оригинальное видео. Рисунок справа показывает стабилизированное видео.

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

Версия этого примера с плавающей точкой: vipstabilize.slx

Версия этого примера с фиксированной точкой: vipstabilize_fixpt.slx

Версия этого примера с фиксированной точкой, которая моделирует организацию основных строк данных: vipstabilize_fixpt_rowmajor.slx