В этом примере показано, как создать мозаику из видео последовательности. Видео mosaicking является процессом сшивания видеокадров вместе, чтобы сформировать полное представление о сцене. Получившееся мозаичное изображение является компактным представлением видеоданных. Блок Video Mosaicking часто используется в сжатии видео и приложениях наблюдения.
Этот пример иллюстрирует, как использовать блок Corner Detection, блок Estimate Geometric Transformation, блок Projective Transform и блок Compositing, чтобы создать мозаичное изображение из видео последовательности.
Следующий рисунок показывает модель Video Mosaicking:
Входная подсистема загружает видео последовательность или из файла или генерирует синтетическую видео последовательность. Выбор является определяемым пользователем. Во-первых, блок Corner Detection находит точки, которые являются соответствующими между последовательными системами координат Угловой подсистемой Соответствия. Затем блок Estimate Geometric Transformation вычисляет точную оценку матрицы преобразования. Этот блок использует алгоритм RANSAC, чтобы устранить точки ввода выброса, уменьшая ошибку вдоль швов выходного изображения мозаики. Наконец, подсистема Mosaicking накладывает текущий видеокадр на выходное изображение, чтобы сгенерировать мозаику.
Входная подсистема может быть сконфигурирована, чтобы загрузить видео последовательность из файла или сгенерировать синтетическую видео последовательность.
Если вы принимаете решение использовать видео последовательность из файла, можно уменьшать время вычисления путем обработки только некоторых видеокадров. Это сделано путем установки уровня субдискретизации в подсистеме Субдискретизации Частоты кадров.
Если вы выбираете синтетическую видео последовательность, можно установить скорость перевода и вращения, размера выходного изображения и источника и уровня шума. Выход синтетического видео генератора последовательности подражает изображениям, полученным перспективной камерой с произвольным движением по плоской поверхности.
Подсистема находит угловые функции в текущем видеокадре в одном из трех методов. Пример использует Локальное сравнение интенсивности (Rosen & Drummond), которая является самым быстрым методом. Другие доступные методы являются детектированием углов методом Харриса (Harris & Stephens) и Минимальное Собственное значение (Shi & Tomasi).
Угловая Подсистема Соответствия находит количество углов, местоположения и их метрических значений. Подсистема затем вычисляет расстояния между всеми функциями в текущей системе координат с теми в предыдущей системе координат. Путем поиска минимальных расстояний подсистема находит лучшие функции соответствия.
Путем накопления матриц преобразования между последовательными видеокадрами подсистема вычисляет матрицу преобразования между током и первым видеокадром. Подсистема затем накладывает текущий видеокадр на выходном изображении. Путем повторения этого процесса подсистема генерирует мозаичное изображение.
Подсистема сбрасывается, когда видео последовательность перематывается или когда блок Estimate Geometric Transformation не находит достаточно inliers.
Warning: Reported in 'vipmosaicking/Estimate Geometric Transformation': Cannot find valid random samples. Increase the number of points in the Num input.
Окно Corners показывает угловые местоположения в текущем видеокадре.
Окно Mosaic показывает получившееся мозаичное изображение.
Окно Corners показывает угловые местоположения в текущем видеокадре.
Окно Mosaic показывает получившееся мозаичное изображение.