arutema47's blog

書いたり書かなかったり。

Tracking Objects as Points (CenterTrack)

eyecatch

eye

なんの論文?

CenterNetの著者からの最新論文。CenterNetと同様にシンプルなアプローチながら、有効性や応用性が高く様々な研究で使われるようになりそう。

前作CenterNetはPointを用いた物体検出であったが、今回は同様のPoint-baseのネットワークでトラッキングの提案。

従来Deepトラッキング系の研究よりも高速、かつ高精度を実現。

著者のAbst.が端的で面白い。

"Our tracker, CenterTrack, applies a detection model to a pair of images and detections from the prior frame. CenterTrack localizes objects and predicts their associations with the previous frame. That’s it. "

arXiv

github

おそらくECCVへの投稿。

追記: 2020/11/4 ECCV2020にて採択されてます。

従来

従来のDeep tracking系は画像物体検出を別ネットワーク(Faster RCNNなど)で実施、 その結果と特徴量をトラッキングネットワークに入力しトラッキングを実施していた。 このような手法を著者らはTracking by detection (物体検出ベースのトラッキング)と呼んでいる。

例えばSORTであればカルマンフィルタで物体のトラッキングを計算し、DeepSORTでは物体の特徴量も用いて検出を行っていた。

このような手法でも精度は高かったが、別々にネットワークを学習しなければならなかったため1)速度が遅い、2)全体ネットワークが複雑で最適化しづらいという欠点があった。

提案

centertrack

CenterTrackは前フレームと当フレームの2枚のペア画像+前フレームの物体情報(Tracklets)のみ入力とし、高精度なトラッキングを実現。

CenterTrackは検出結果、物体サイズ情報、そして点がどう動いたかというオフセット情報を出力する。 たったこれだけの情報で、高精度なトラッキングが実現でき学習が上手くいくというのは驚き。

ただ本文中でも学習時のデータの与え方には工夫が必要と書いている。何も考えずに学習してしまうと前フレームしかネットワークに入力しないため物体が動いていないと出力しても十分ロスは低く、学習が進めない。

著者もネットワーク自体はほぼCenterNetと変わらないが、Augumentationや学習時の工夫がないと上手くこのモデルは動かないと書いている。 学習を上手く進めるためには1)アグレッシブなデータアーグメンテーション、2)False NegativeやFalse PositveのTrackletsを恣意的に与えて学習する、という新規ポイントを加えており、それが論文的に面白い。

興味深い手法

Tracking data augumentationの部分(4.4 Training on static image data)が非常に興味深く、実務上も有用だと思うので紹介する。

トラッキング用の学習データを作ることは難しい。例えばビデオデータにおいてある物体がどう遷移しているかというデータセットを作る手間は非常に大きく、画像認識等と比べ大量のデータを用意するのは難しい。 このデータセットを作る難しさのおかげであまりトラッキング用データセットは世になかったため、DeepTracking系はあまり画像の研究として盛り上がっていなかった。(個人の感想です)

一方CenterTrackの論文では一枚の画像をshift-rotateすることで擬似的に前フレームを作り出し、ビデオデータなしにtrackerを学習が可能にした。 またこのAugumentation時に物体を大きく動かすことでネットワークのトラッキングに対する汎化性能が大きく上がり、高精度化に最も寄与したとのこと。

著者らはMS-COCOのデータセットを元にトラッキングモデルの学習を実現している。(画像中でネクタイのトラッキングが実現できている!) この画像データセットから高精度トラッキングネットワークが学習できることは大きなブレイクスルーであり、インパクトはかなり大きいのじゃないかと思う。