Интерпретация TPAGT

компьютерное зрение

Введение

Новый метод MOT, недавно предложенный Чжэцзянским университетом и Институтом Бодхидхармы, в настоящее время является одним из лучших в нескольких наборах данных, обычно используемых в MOT Challenge. Название статьи Tracklets Predicting Based Adaptive Graph Tracking на самом деле указывает на две самые большие инновации в этой статье: извлечение признаков на основе предсказания траектории и агрегирование признаков на основе сети адаптивного графа. Большинство существующих методов многоцелевого отслеживания связывают результаты обнаружения текущего кадра с историческими сегментами траектории, используя линейную комбинацию, основанную на косинусном расстоянии объекта и целевом ограничивающем прямоугольнике IOU в качестве метрики, что на самом деле имеет две проблемы:Во-первых, признаки, извлеченные из одной и той же цели на двух разных кадрах (текущий кадр и предыдущий кадр), как правило, несовместимы; во-вторых, при извлечении признаков нецелесообразно рассматривать только внешний вид без учета позиционных отношений и отслеживания. информация о сегменте.

Поэтому в статье предлагается новый высокоточный сквозной многоцелевой фреймворк слежения TPAGT (предыдущая версия называлась FGAGT, мне кажется, что TPAGT больше подходит для работы в статье), которая решает две вышеуказанные проблемы. , в нескольких данных На съемочной площадке реализована новая SOTA.

  • название статьи
    Tracklets Predicting Based Adaptive Graph Tracking
  • Бумажный адрес
    АР Вест V.org/ABS/2010.09…
  • Исходный код бумаги
    Еще не с открытым исходным кодом

вводить

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

Во-первых, давайте поговорим о нескольких проблемах, которые не решили существующие методы ТО.

  1. несоответствие характеристик
    Откуда эта проблема?На самом деле признаки цели на треклете исходят от предыдущего кадра,а не от текущего кадра(это несложно понять,текущему кадру для определения цели нужен только результат обнаружения текущего кадра положение цели для извлечения признаков Хорошо), но на самом деле в процессе движения поза, интенсивность света и угол обзора цели могут меняться, в результате чего признаки одной и той же цели на разных изображениях не будут совпадать даже если обнаружение точное Негативное влияние относительно велико.
  2. Проблема слияния функций
    Фактически, начиная с DeepSORT, экстрактор признаков в основном фокусируется на информации о внешнем виде, потому что это имеет решающее значение для некоторых методов MOT, которые игнорируют моделирование движения, поэтому ветвь извлечения признаков также стала ветвью ReID, главным образом потому, что касается модели повторной идентификации. примерно. внешний вид информация. Однако позиционное соотношение между целями и историческая информация о треклетах также важны для задачи MOT.
  3. Пример проблемы дисбаланса
    Треклет может соответствовать только одному кадру обнаружения, тогда этот треклет является непрерывным положительным примером, а треклет, который не соответствует, является непрерывным отрицательным примером. Очевидно, что положительных примеров гораздо меньше, чем отрицательных, и из-за появления небольшого количества новых целей и исчезновения старых проблема дисбаланса разных типов выборок еще более усугубляется.

Вышеупомянутые проблемы TPAGT были решены одна за другой, одна из основных проблем заключается в том, что функции в траклетах несовместимы с текущим кадром, поэтому как это решить, с текущим кадромПовторное извлечениеФункция хороша, но очевидно, что bbox предыдущего кадра (ограничивающая рамка, включая область расположения цели и другую информацию) нельзя напрямую использовать для текущего кадра, потому что цель не может быть неподвижной на изображении, и очень неразумно использовать положение в предыдущий момент, поэтому необходимо выполнить оценку движения на предыдущем кадре, чтобы получить предсказанное положение bbox цели в текущем кадре, а затем извлечь признаки. Затем возникает проблема слияния признаков.Учитывая, что отношения между целями аппроксимируются графическим представлением, автор принимаетGNN(Graph Neural Network) для агрегирования информации.Чтобы лучше получать глобальную пространственно-временную информацию, адаптивно изучается вес ребра GNN. Наконец, проблема несбалансированности выборки принимаетBalanced MSE Loss, который является взвешенным MSE и является общей идеей.

каркасный дизайн

Tracklets predicting based feature re-extracting

На приведенном выше рисунке показан дизайн общей структуры.Позвольте мне сначала кратко представить конвейер сети. Во-первых, вход сети включает текущее изображение кадра, текущий результат обнаружения кадра и исторический результат обнаружения кадра; затем изображение отправляется в магистраль для получения карты признаков (здесь, наконец, магистраль использует ResNet101+FPN). для лучшего эффекта), а затем bbox (здесь текущий кадр использует обнаруженный bbox, предсказанный оптический поток bbox, использованный в предыдущем кадре) сопоставляется с картой признаков, а признаки внешнего вида области получаются с помощью RoI Align и затем отправляется на полное соединение (эта операция аналогична функции извлечения предложения Faster R-CNN, а не для понимания, вы можете обратиться к моемублог), а затем в сочетании с информацией о положении и исторической информацией о кадре текущего кадра позволяет сети графа адаптивно научиться выполнять слияние признаков для вычисления сходства, а с помощью матрицы подобия Венгрии можно вычислить результат сопоставления.

В приведенном выше утверждении есть недоразумение. Он извлекает признаки как из предсказанного bbox прошлого кадра, так и из непрогнозированного bbox исторического кадра на текущей карте признаков. На самом деле нет, на самом деле,t2t-2Элементы кадра обработаныt1t-1Фрейм был повторно извлечен, и должна быть серьезная проблема рассогласования в текущем извлечении кадра с bbox на тот момент, во-вторых, это сильно усложнит расчет сети, что совершенно не нужно. Изображение статьи немного вводит в заблуждение, и его можно будет подробно изучить после того, как оно будет открыто.

Мы знаем, что предыдущий метод МОЛ в основном использовал метод оценки состояния, метод оптического потока и метод прогнозирования смещения, представленный фильтром Калмана, для моделирования движения.В этой статье используется метод разреженного оптического потока для прогнозирования движения центральной точки bbox. Движение иногда бывает высокоскоростным. Чтобы иметь дело с этим режимом движения, необходимо использовать соответствующий метод оптического потока. В статье используется пирамидальный оптический поток, который очень надежен. Для получения подробной информации см.этот блог, изображение ниже — это текущая позиция кадра цели, предсказанная оптическим потоком пирамиды (изображение b), изображение c — это кадр GT, вы можете видеть, что прогноз все еще очень точен.

Adapted Graph Neural Network

Давайте поговорим об этой адаптивной графовой нейронной сети. Обработка треклетов и обнаружений как двудольных графов не нова, но TPAGT для агрегирования функций должен быть одной из немногих задач,Вы должны знать, что наша агрегация признаков движения и внешнего вида является лишь комбинацией искусственного дизайна, а авторская адаптивная агрегация признаков с помощью графовой сети — очень продвинутая идея.Каждая цель обнаружения и каждый треклет являются узлами.Как показано на рисунке выше, нет связи между обнаружениями и нет связи между треклетами, но есть связь между каждым треклетом и каждым обнаружением. Целью обучения графовой сети является вложение состояния каждого узла.hv\mathbf{h}_{v}или вектор признаков после агрегирования другой информации. В конечном счете, этоhv\mathbf{h}_{v}Содержит информацию о соседних узлах.

Вложение состояния, которое необходимо изучить, обновляется по следующей формуле.Первая строка представляет собой обновление узла обнаружений, а вторая строка представляет обновление узла треклетов.Всего имеетсяNNобнаружение иMMтреклеты. Значение нескольких символов в первой строке поясняется ниже, во второй строке аналогично.ffПредставляет операцию нейронной сети, которую можно понимать как функцию подбора сети;ht,cjh_{t, c}^{j}означает первыйccслойiiВложение состояния каждого обнаружения. С начала,c=0,hd,0i=fdi,ht,0i=ftjc=0, h_{d, 0}^{i}=f_{d}^{i}, h_{t, 0}^{i}=f_{t}^{j},ed,ci,je_{d, c}^{i, j}означает первыйiiобнаружение иjjтреклеты вccВес ребра на графике слоя. Автор этой статьи использует только однослойную GNN с добавленной адаптацией, поэтому далее подробно описывается ситуация однослойного обучения.

hd,c+1i=f(hd,ci,{ht,cj,ed,ci,j}j=1N),i=1,2,,Mht,c+1j=f(ht,cj,{hd,ci,et,cj,i}i=1M)j=1,2,,N\begin{aligned} h_{d, c+1}^{i} &=f\left(h_{d, c}^{i},\left\{h_{t, c}^{j}, e_{d, c}^{i, j}\right\}_{j=1}^{N}\right), i=1,2, \cdots, M \\ h_{t, c+1}^{j} &=f\left(h_{t, c}^{j},\left\{h_{d, c}^{i}, e_{t, c}^{j, i}\right\}_{i=1}^{M}\right) j=1,2, \cdots, N \end{aligned}

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

  1. Рассчитать начальное сходство
    si,j=1fdiftj2+1×1016si,j=si,jsi,12+si,22+si,j2++si,N2Sft=[si,j]M×N,i=1,M,j=1,N\begin{array}{c} s_{i, j}=\frac{1}{\left\|f_{d}^{i}-f_{t}^{j}\right\|_{2}+1 \times 10^{-16}} \\ s_{i, j}=\frac{s_{i, j}}{\sqrt{s_{i, 1}^{2}+s_{i, 2}^{2}+\cdots s_{i, j}^{2}+\cdots+s_{i, N}^{2}}}\\ \mathbf{S}_{\mathrm{ft}}=\left[s_{i, j}\right]_{M \times N}, i=1, \cdots M, j=1, \cdots N \end{array}
  2. Веса ребер формируются IOU и вышеуказанным начальным подобием (wwобучаемый, представляющий относительную важность информации о местоположении и внешнем виде)
E=w×IOU+(1w)×Sft\mathrm{E}=w \times \mathrm{IOU}+(1-w) \times \mathrm{S}_{\mathrm{ft}}
  1. Совокупные характеристики узла в соответствии с приведенными выше адаптивными весами (\odotУказывает скалярное произведение)
Ftag=EFt=E[ft1,ft2,,ftN]T\mathbf{F}_{\mathrm{t}}^{\mathrm{ag}}=\mathrm{EF}_{t}=\mathrm{E}\left[f_{t}^{1}, f_{t}^{2}, \cdots, f_{t}^{N}\right]^{T}
Hd=о(FdW1+Sigmoid(FdWa)FtagW2)\mathbf{H}_{\mathrm{d}}=\sigma\left(\mathbf{F}_{d} W_{1}+\operatorname{Sigmoid}\left(\mathbf{F}_{d} W_{a}\right) \odot \mathbf{F}_{\mathrm{t}}^{\mathbf{a g}} W_{2}\right)
Ht=о(FtW1+Sigmoid(FtWa)FdagW2)\mathbf{H}_{\mathrm{t}}=\sigma\left(\mathbf{F}_{t} W_{1}+\operatorname{Sigmoid}\left(\mathbf{F}_{t} W_{a}\right) \odot \mathbf{F}_{\mathrm{d}}^{\mathbf{a g}} W_{2}\right)

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

hdi=hdihdi2,htj=htjhtj2,Sout=HdHtTh_{d}^{i}=\frac{h_{d}^{i}}{\left\|h_{d}^{i}\right\|_{2}}, h_{t}^{j}=\frac{h_{t}^{j}}{\left\|h_{t}^{j}\right\|_{2}}, \mathbf{S}_{\mathrm{out}=\mathbf{H}_{\mathrm{d}} \mathbf{H}_{\mathbf{t}}^{\mathrm{T}}}

Blanced MSE Loss

После получения окончательной матрицы подобия можно проводить обучение с учителем, но метка GT для одной и той же цели равна 1, а для разных целей - 0. На следующем рисунке представлена ​​визуализация, сделанная автором. Каждая строка представляет обнаружение, каждая Столбец представляет треклет, зеленый Строка указывает на то, что обнаружение не соответствует ни одному треклету, поэтому это новая цель; красный столбец, напротив, указывает на исчезающую цель. 1 означает положительные примеры, 0 означает отрицательные примеры, очевидно, что положительные и отрицательные примеры серьезно несбалансированы, поэтому здесь MSE взвешивается (гиперпараметр) в соответствии с типом цели следующим образом.

L=альфаEc0+бетаEc1+γEne+дельтаEd+εEw=i=1Mj=1N[альфа(S^i,jSi,j)2IПродолжатьISi,j=0+бета(S^i,jSi,j)2IПродолжатьISi,j=1+γ(S^i,jSi,j)2Inew+дельта(S^i,jSi,j)2Iисчезнуть+εW22]\begin{aligned} \mathcal{L} &=\alpha E_{c 0}+\beta E_{c 1}+\gamma E_{n e}+\delta E_{d}+\varepsilon E_{w} \\ &=\sum_{i=1}^{M} \sum_{j=1}^{N}\left[\begin{array}{c} \alpha\left(\hat{S}_{i, j}-S_{i, j}\right)^{2} \cdot \mathbb{I}_{\text {continue }} \cdot \mathbb{I}_{S_{i, j}=0}+\beta\left(\hat{S}_{i, j}-S_{i, j}\right)^{2} \cdot \mathbb{I}_{\text {continue }} \cdot \mathbb{I}_{S_{i, j}=1} \\ +\gamma\left(\hat{S}_{i, j}-S_{i, j}\right)^{2} \cdot \mathbb{I}_{n e w}+\delta\left(\hat{S}_{i, j}-S_{i, j}\right)^{2} \cdot \mathbb{I}_{\text {disap }}+\varepsilon\|W\|_{2}^{2} \end{array}\right] \end{aligned}

дизайн вывода

При выводе мы получим матрицу подобия, так как же использовать эту матрицу? Предположим, естьNNобнаружение иMMтреклет, матрица естьM×NM\times N, в это время добавить позжеM×MM\times MРасширенная матрица , каждое значение в матрице является порогом.Как показано на рисунке ниже, венгерский алгоритм стал методом сопоставления с фильтрацией.На рисунке ниже, так как третья и восьмая строки не имеют подобия выше порога (0,2), так что это стало новой целью.

Эксперимент и анализ

Часть обнаружения использует результаты обнаружения FairMOT, то есть CenterNet используется в качестве детектора. В части извлечения признаков в статье в качестве основы используется ResNet101-FPN, предварительно обученный на COCO, а затем настроенный на 30 раундов в наборе данных MOT. Другие подробности обучения вы можете найти в статье.Я не буду здесь много говорить.Тесты проводились на общедоступной и частной трассах.Результаты следующие.

Кроме того, авторы проводят обширные эксперименты по абляции, которые демонстрируют надежность TPAGT.

Суммировать

Пионер предложил стратегию повторного извлечения признаков и представил AGNN для слияния признаков, тем самым создав структуру TPAGT, сквозную структуру обучения, которая может напрямую выводить матрицу подобия. Достигнуты показатели SOTA на обеих трассах MOT Challenge.

использованная литература

[1]Shan C, Wei C, Deng B, et al. Tracklets Predicting Based Adaptive Graph Tracking[J]. arXiv:2010.09015 [cs], 2020.