FUSION · СПРАВОЧНИК НОД
OpticalFlow
OpticalFlow / Оптический поток
OpticalFlow оценивает движение между соседними кадрами и добавляет к изображению каналы Vector и Back Vector. Эти данные нужны последующим инструментам, например TimeStretcher; сама нода не замедляет клип и не создаёт видимый эффект размытия.
OpticalFlow
Обзор
Что делает OpticalFlow
OpticalFlow анализирует временное изменение изображения. Один вход Input получает кадры; отдельные разъёмы для Vector и Back Vector здесь не нужны, поскольку данные передаются внутри изображения как AUX-каналы. Если сразу подключить Output к MediaOut, RGB обычно будет выглядеть как исходный клип: расчёт движения нужно использовать дальше по цепочке.
Руководство Resolve 21 различает Classic, использующий CPU, и Advanced, использующий GPU. Classic сохраняет совместимость с прежним методом; Advanced открывает Warp Count, Iteration Count, Smoothness и Half Resolution, показанные в архиве. Большие Warp Count и Iteration Count увеличивают объём расчёта, но после сходимости не гарантируют улучшения. Сравнивайте контуры и реальное время расчёта на своём кадре.
Smoothness регулирует пространственную гладкость поля движения. Слишком слабое сглаживание может оставить шумные векторы, слишком сильное — потерять различие движений у тонкой детали или границы объекта. Half Resolution снижает разрешение анализа; это не команда уменьшить размеры выходного кадра вдвое.
Output Vectors as Layers меняет представление рассчитанных полей: вместо работы только с привычными AUX они доступны как отдельные слои для совместимого многослойного пути. Флажок не является обязательным условием расчёта OpticalFlow. Потребитель должен читать тот формат, который вы передаёте; у SmoothMotion для слоёв предусмотрен Use Layers for Input Vectors.
Для ретайминга подайте OpticalFlow в TimeStretcher, выберите Interpolate Mode=Flow и анимируйте Source Time. Два линейных ключа задают требуемую скорость; единственный исходный ключ Source Time может оставить стоп-кадр. TimeStretcher использует и удаляет входные Vector/BackVector, поэтому для следующего расчёта движения после ретайминга их создают заново.
Склейка, вспышка, сильный смаз, повторяющаяся текстура и перекрытие объектов затрудняют оценку соответствий. Анализируйте отдельный непрерывный план с достаточными соседними кадрами. Viewer → Vectors помогает увидеть поле; Normalize Color Range меняет просмотр, а не вычисленные данные. При сохранении промежуточного результата нужен формат и набор каналов, сохраняющий Vector и Back Vector, например правильно настроенный OpenEXR.
Когда применять
Подготовка движения для Flow-интерполяции TimeStretcher.
Сравнение CPU- и GPU-методов на сложном плане.
Просмотр и диагностика полей движения.
Подготовка векторных слоёв для совместимых инструментов.
Сохранение проверенных полей в многоканальном промежуточном файле.
OpticalFlow в контексте
Скриншоты из статьи. Откройте изображение, чтобы рассмотреть его крупнее.
Пример для OpticalFlow.
Оригинальное изображение