Понимание видео требует одновременного ответа на два сложных вопроса: что находится в кадре и куда это движется? Традиционно системы компьютерного зрения решают эти задачи по отдельности. Сначала они выполняют сегментацию, выделяя объекты из пикселей, а затем — трекинг, связывая эти объекты во времени. Такое разделение создает трение. Ошибки первого этапа перетекают во второй. Границы смещаются, идентификаторы меняются. Когда люди или транспортные средства перекрывают друг друга, весь конвейер дает сбой.
Недавние работы над формулировками multi-cut предлагают иной путь. Вместо того чтобы выстраивать цепочку из двух моделей, этот подход рассматривает сегментацию и трекинг как единую задачу оптимизации. Результатом становятся более четкие границы, меньшее количество смен идентификаторов и конвейер, который сохраняет стабильность даже в переполненных сценах.
Проблема конвейерных подходов
Большинство промышленных систем сначала запускают детектирование или сегментацию, а затем передают результат модулю трекинга. Именно на этом этапе передачи данных всё идет не так. Модель сегментации, обученная на статичных изображениях, может выдать маску, которая будет чуть больше необходимого в десятом кадре и чуть меньше — в одиннадцатом. Трекеру, который ориентируется только на центры боксов или расстояния эмбеддингов, приходится решать, принадлежат ли эти две маски одному и тому же объекту. У него нет возможности дать обратную связь и сообщить сегментатору, что граница выглядит неверно. Эти две системы не взаимодействуют друг с другом.
Такое разделение становится критическим, когда объекты взаимодействуют. Представьте пешеходный переход, где люди лавируют друг между другом, или манипулятор робота, тянущийся мимо стопки коробок к конкретной детали. В такие моменты традиционные трекеры полагаются на модели движения или признаки внешнего вида, чтобы сохранить идентификатор. Когда окклюзия длится более нескольких кадров, эти подсказки перестают работать. Трекер либо придумывает новый идентификатор для того же объекта, либо приписывает старый идентификатор другому объекту. Тем временем сегментатор продолжает создавать маски, даже не подозревая, что метки сместились. Устранение этого дрейфа требует тяжелой постобработки или ручной разметки, что сводит на нет саму идею автоматизации.
Традиционные модели часто теряют объект именно в моменты перекрытия. Эти ошибки не случайны, они структурны. Конвейер, который рассматривает время как второстепенный фактор, неизбежно будет испытывать трудности с непрерывностью.
Что дает подход multi-cut
Формулировка multi-cut разрушает стену между сегментацией и трекингом. Вместо того чтобы создавать последовательность разрозненных масок, а затем сшивать их, этот метод строит граф, охватывающий пространство и время. Каждая потенциальная область объекта в каждом кадре становится узлом. Ребра соединяют области, которые могут принадлежать одной и той же сущности — как внутри одного кадра, так и между соседними кадрами. Затем алгоритм находит оптимальный способ разрезания этих ребер так, чтобы оставшиеся связные компоненты образовывали согласованные объекты, естественно движущиеся в видео.
Поскольку решение принимается глобально, на исправление границы в пятнадцатом кадре могут повлиять данные из пятого кадра. Если два человека пересекают пути друг друга, формулировке не нужно гадать, основываясь только на скорости. Она одновременно учитывает внешний вид, форму, движение и согласованность границ. Качество маски и качество трека оптимизируются в рамках одной целевой функции. Когда решатель (solver) закрепляет идентификатор, он уже проверил, что соответствующие пиксели логичны с пространственной точки зрения. Именно эта связка позволяет системе восстанавливаться после окклюзий, которые разрушили бы работу конвейерного подхода.
Прямая связь визуальных данных с логикой трекинга замыкает петлю обратной связи. Сегментация предоставляет данные для трекинга, а ограничения трекинга уточняют сегментацию. Вы получаете более точные результаты с меньшим количеством ручных правок, потому что система больше не делает предположения изолированно на каждом этапе.
Где это применяется на практике
Преимущества единой формулировки не ограничиваются теорией. Они важны в трех конкретных областях, которые постоянно встречаются при развертывании систем.
Согласованность от кадра к кадру. В спортивной аналитике силуэт атлета должен оставаться точным, чтобы можно было надежно извлекать биомеханические метрики, такие как длина шага или углы в суставах. Если сегментация «дрожит» независимо от трекинга, результирующая кинематика становится зашумленной. Единая формулировка устраняет это дрожание, рассматривая контур атлета как единую непрерывную сущность на протяжении всего клипа.
Многолюдные сцены. Приложения для видеонаблюдения и подсчета толпы теряют точность, когда люди сбиваются в группы. Раздельные трекеры часто объединяют идентификаторы или создают фантомные объекты в промежутках между телами. Благодаря прямой связи визуальных данных с логикой отслеживания, подход multi-cut лучше сохраняет идентичность объектов в многолюдных сценах. Люди остаются различимыми, даже если их ограничивающие рамки (bounding boxes) почти полностью перекрываются.
Целостность границ. В робототехнике система pick-and-place требует точных контуров объектов для планирования захватов. Модель сегментации, игнорирующая временной контекст, может захватить часть фона или «отрезать» угол предмета. Когда сегментация и трекинг имеют общую целевую функцию, модель обучается тому, что границы должны быть стабильными во времени. В результате маски точнее прилегают к реальным краям, что означает меньше неудачных захватов и снижает потребность в избыточных запасах безопасности.
Создание более эффективных конвейеров
Для инженеров, работающих в области видеоаналитики или робототехники, этот сдвиг имеет конкретные последствия для архитектуры систем.
Перестаньте воспринимать детектирование, сегментацию и трекинг как три отдельных микросервиса, передающих тензоры по конвейерной ленте. Вместо этого ищите фреймворки, предлагающие совместную целевую функцию. Если вы строите собственный конвейер, подумайте, может ли ваша структура графа кодировать как пространственную близость (spatial affinity), так и временную непрерывность в одной функции потерь (loss). Даже если вы не реализуете полноценный решатель multi-cut самостоятельно, этот принцип все равно применим. Добавьте ограничения, которые связывают изменения внешнего вида во времени с качеством маски для каждого кадра.
Проводите агрессивное тестирование на окклюзию. Демонстрационное видео с изолированными объектами, движущимися по простым траекториям, не выявит слабых мест конвейерного подхода. Собирайте последовательности, где цели перекрывают друг друга, где освещение меняется в процессе перекрытия и где объекты снова появляются в кадре из-за его границ. Именно такие моменты отличают «склеенный» конвейер от по-настоящему единой системы.
Тщательно подготовьте стратегию аннотирования. Совместным моделям часто требуются иные структуры ground truth, чем наборам данных только для сегментации или только для трекинга. Вам может потребоваться последовательно помечать идентификаторы экземпляров (instance identities) на протяжении всех кадров, а не просто классифицировать пиксели на каждом изображении. Инвестиции в такую разметку на ранних этапах окупятся за счет сокращения ручной корректировки при развертывании.
Главный вывод
Рассматривать сегментацию и трекинг как независимые задачи имело смысл, когда вычислительные мощности и емкость моделей были ограничены. Сейчас это уже не так. Формулировка multi-cut показывает, что эти две задачи на самом деле являются одной: поиском целостных объектов, существующих во времени. Решая их совместно, вы получаете маски, учитывающие движение, и треки, учитывающие форму. Результатом становится конвейер понимания видео, который минимизирует ошибки между кадрами, создает более четкие границы вокруг движущихся объектов и сохраняет точность в сложных условиях окклюзий и толпы.
