В компьютерном зрении и обработке изображений оценка движения — это процесс определения векторов движения , которые описывают преобразование одного 2D-изображения в другое; обычно из соседних кадров в видеопоследовательности. Это некорректно поставленная задача , поскольку движение происходит в трех измерениях (3D), но изображения представляют собой проекцию 3D-сцены на 2D-плоскость. Векторы движения могут относиться ко всему изображению ( глобальная оценка движения ) или к определенным частям, таким как прямоугольные блоки, участки произвольной формы или даже к пикселю . Векторы движения могут быть представлены трансляционной моделью или многими другими моделями, которые могут аппроксимировать движение реальной видеокамеры, такими как вращение и трансляция во всех трех измерениях и масштабирование.
Чаще всего термины «оценка движения» и « оптический поток » используются взаимозаменяемо. [ требуется ссылка ] Он также концептуально связан с регистрацией изображений и стереосоответствием . [1] Фактически, все эти термины относятся к процессу поиска соответствующих точек между двумя изображениями или видеокадрами. Точки, которые соответствуют друг другу в двух видах (изображениях или кадрах) реальной сцены или объекта, «обычно» являются одной и той же точкой в этой сцене или на этом объекте. Прежде чем мы выполним оценку движения, мы должны определить наше измерение соответствия, т. е. метрику соответствия, которая является измерением того, насколько похожи две точки изображения. Здесь нет правильного или неправильного; выбор метрики соответствия обычно связан с тем, для чего используется окончательное оцененное движение, а также со стратегией оптимизации в процессе оценки.
Каждый вектор движения используется для представления макроблока на изображении на основе положения этого макроблока (или аналогичного) на другом изображении, называемом опорным изображением.
Стандарт H.264/MPEG-4 AVC определяет вектор движения как:
Вектор движения: двумерный вектор, используемый для интер-предсказания, который обеспечивает смещение от координат в декодированном изображении к координатам в опорном изображении. [2] [3]
Методы поиска векторов движения можно разделить на методы, основанные на пикселях («прямые») и методы, основанные на признаках («косвенные»). Известный спор привел к появлению двух статей от противоборствующих фракций, которые пытались прийти к какому-либо выводу. [4] [5]
Косвенные методы используют такие функции, как обнаружение углов , и сопоставляют соответствующие функции между кадрами, обычно со статистической функцией, применяемой к локальной или глобальной области. Цель статистической функции — удалить соответствия, которые не соответствуют фактическому движению.
К успешно используемым статистическим функциям относится RANSAC .
Можно утверждать, что почти все методы требуют какого-то определения критериев сопоставления. Разница только в том, суммируете ли вы сначала локальную область изображения, а затем сравниваете суммирование (например, методы на основе признаков), или вы сначала сравниваете каждый пиксель (например, возведение в квадрат разницы), а затем суммируете по локальной области изображения (движение на основе блока и движение на основе фильтра). Новый тип критериев сопоставления сначала суммирует локальную область изображения для каждого местоположения пикселя (через некоторое преобразование признаков, например, преобразование Лапласа), сравнивает каждый суммированный пиксель и снова суммирует по локальной области изображения. [6] Некоторые критерии сопоставления обладают способностью исключать точки, которые на самом деле не соответствуют друг другу, хотя и дают хорошую оценку сопоставления, другие не обладают такой способностью, но они все еще являются критериями сопоставления.
Оценка аффинного движения — это метод, используемый в компьютерном зрении и обработке изображений для оценки движения между двумя изображениями или кадрами. Он предполагает, что движение можно смоделировать как аффинное преобразование (перемещение + вращение + масштабирование), которое представляет собой линейное преобразование, за которым следует перемещение.
Применение векторов движения к изображению для синтеза преобразования к следующему изображению называется компенсацией движения . [7] Ее легче всего применять к стандартам кодирования видео на основе дискретного косинусного преобразования (DCT) , поскольку кодирование выполняется блоками. [8]
Как способ использования временной избыточности, оценка и компенсация движения являются ключевыми частями сжатия видео . Почти все стандарты кодирования видео используют оценку и компенсацию движения на основе блоков, такие как серия MPEG , включая самый последний HEVC .
При одновременной локализации и картографировании трехмерная модель сцены реконструируется с использованием изображений с движущейся камеры. [9]