Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ByteTrack_MOTR_CV勉強会ECCV2022論文読み会発表資料
Search
Shirokuma
October 22, 2022
Technology
2
1.1k
ByteTrack_MOTR_CV勉強会ECCV2022論文読み会発表資料
CV勉強会ECCV2022論文読み会の発表資料です。
Shirokuma
October 22, 2022
Tweet
Share
More Decks by Shirokuma
See All by Shirokuma
最近気になってるText-to-Imageを応用したNeRF論文の解説
nekanat
0
650
BurnでDeep Learningやってみる
nekanat
0
66
Other Decks in Technology
See All in Technology
omakaseしないための.rubocop.yml のつくりかた / How to Build Your .rubocop.yml to Avoid Omakase #kaigionrails
linkers_tech
3
730
Amazon_CloudWatch_ログ異常検出_導入ガイド
tsujiba
4
1.6k
なんで、私がAWS Heroに!? 〜社外の広い世界に一歩踏み出そう〜
minorun365
PRO
6
1.1k
【若手エンジニア応援LT会】AWSで繋がり、共に成長! ~コミュニティ活動と新人教育への挑戦~
kazushi_ohata
0
180
大規模データ基盤チームのオンプレTiDB運用への挑戦 / dpu-tidb
cyberagentdevelopers
PRO
1
110
分布で見る効果検証入門 / ai-distributional-effect
cyberagentdevelopers
PRO
4
700
Figma Dev Modeで進化するデザインとエンジニアリングの協働 / figma-with-engineering
cyberagentdevelopers
PRO
1
430
とあるユーザー企業におけるリスクベースで考えるセキュリティ業務のお話し
4su_para
3
320
10分でわかるfreee エンジニア向け会社説明資料
freee
18
520k
新R25、乃木坂46 Mobileなどのファンビジネスを支えるマルチテナンシーなプラットフォームの全体像 / cam-multi-cloud
cyberagentdevelopers
PRO
1
130
新卒1年目が向き合う生成AI事業の開発を加速させる技術選定 / ai-web-launcher
cyberagentdevelopers
PRO
7
1.5k
신뢰할 수 있는 AI 검색 엔진을 만들기 위한 Liner의 여정
huffon
0
340
Featured
See All Featured
Building a Modern Day E-commerce SEO Strategy
aleyda
38
6.9k
Bash Introduction
62gerente
608
210k
Imperfection Machines: The Place of Print at Facebook
scottboms
264
13k
Measuring & Analyzing Core Web Vitals
bluesmoon
1
40
ReactJS: Keep Simple. Everything can be a component!
pedronauck
664
120k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
126
18k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
14
1.9k
The World Runs on Bad Software
bkeepers
PRO
65
11k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
Navigating Team Friction
lara
183
14k
Transcript
ByteTrack vs MOTR 〜オブジェクトトラッキングガチンコ対決〜 2022/10/22 しろくま@neka-nat 第57回 コンピュータビジョン勉強会
自己紹介 独立系ロボットエンジニア しろくま@neka-nat https://twitter.com/neka_nat https://github.com/neka-nat • フリーでロボティクス・画像処理関連のソフトウェア開 発やってます!
自己紹介 独立系ロボットエンジニア しろくま@neka-nat https://twitter.com/neka_nat https://github.com/neka-nat • フリーでロボティクス・画像処理関連のソフトウェア開 発やってます! • 前職は某大手JTC社員
• 好きなCV技術 ◦ 点群処理 ◦ 3次元再構成 ◦ 高速化・ハードウェアアクセラレーション
自己紹介 独立系ロボットエンジニア しろくま@neka-nat https://twitter.com/neka_nat https://github.com/neka-nat • フリーでロボティクス・画像処理関連のソフトウェア開 発やってます! • 前職は某大手JTC社員
• 好きなCV技術 ◦ 点群処理 ◦ 3次元再構成 ◦ 高速化・ハードウェアアクセラレーション • Web関連のお仕事もやってます ◦ React/TypeScript/Rust/AWS/Terraform • お仕事に関してDMなどでお気軽にご相談ください!
Multi Object Tracking(MOT)とは? • 動画内に映る人や車を検出し、追跡する手法 • フレーム間で同じ物体であるものに同じIDを割り振るようにする ID1 ID2 ID3
Multi Object Tracking(MOT)とは? • 動画内に映る人や車を検出し、追跡する手法 • フレーム間で同じ物体であるものに同じIDを割り振るようにする ID1 ID3 ID2
Multi Object Tracking(MOT)とは? • 動画内に映る人や車を検出し、追跡する手法 • フレーム間で同じ物体であるものに同じIDを割り振るようにする ID3 ID2 ID4
Multi Object Tracking(MOT)とは? • 動画内に映る人や車を検出し、追跡する手法 • フレーム間で同じ物体であるものに同じIDを割り振るようにする ID1 ID3 ID2
ID4
MOTの解き方~Tracking by Detection~ • 検出結果とトラックレットの紐付け ◦ 検出結果:物体検出の結果 ◦ トラックレット:追跡情報、IDを保持 検出結果tフレーム
トラックレットtフレーム
MOTの解き方~Tracking by Detection~ 検出結果tフレーム トラックレットtフレーム • 3つのフェーズに分ける ◦ 物体検出と特徴量計算 ◦
次フレームのトラックレット予測(カルマンフィルタ) ◦ 予測トラックレットと検出結果の紐付け(ハンガリアン)
MOTの解き方~Tracking by Detection~ • 3つのフェーズに分ける ◦ 物体検出と特徴量計算 ◦ 次フレームのトラックレット予測(カルマンフィルタ) ◦
予測トラックレットと検出結果の紐付け(ハンガリアン) 検出結果tフレーム トラックレットt+1フレーム予測
MOTの解き方~Tracking by Detection~ • 3つのフェーズに分ける ◦ 物体検出と特徴量計算 ◦ 次フレームのトラックレット予測(カルマンフィルタ) ◦
予測トラックレットと検出結果の紐付け(ハンガリアン) 検出結果t+1フレーム トラックレットt+1フレーム予測
MOTの解き方~Tracking by Detection~ • 3つのフェーズに分ける ◦ 物体検出と特徴量計算 ◦ 次フレームのトラックレット予測(カルマンフィルタ) ◦
予測トラックレットと検出結果の紐付け(ハンガリアン) 検出結果t+1フレーム トラックレットt+1フレーム予測
ハンガリアンとは? • なんか呼び方がいろいろある ◦ ハンガリー法 ◦ Munkres ◦ Linear Sum
Assignment • 予測物体と検出物体の類似度行列を作成し、割当後の類似度の和が最大になるよう に割り当てる 検出 物体1 検出 物体2 検出 物体3 検出 物体4 トラック レット1 0.7 0.6 0.2 0.3 トラック レット2 0.7 0.3 0.2 0.1 トラック レット3 0.3 0.2 0.6 0.9 トラックレッ ト1 検出物体2 トラックレッ ト2 検出物体1 トラックレッ ト3 検出物体4 新たに検出物体3を トラックレット4にする
Deep Learningの導入 • SORT(2016) ◦ 物体検出の部分をFasterRCNNにした ◦ 類似度計算は検出結果とトラックレットの境界ボックスのIoUを使用 ◦ 精度と速度は向上したが、オクルージョンに弱い
• DeepSORT(2017) ◦ 類似度計算に境界ボックスの画像から求めたReID特徴量も使うようにした ◦ 紐付けの階層化 ▪ ReIDで紐付け→紐付かなかったものをSORTで紐付け • FairMOT(2020) ◦ 境界ボックスとReID特徴量をOneモデルで推論で きるようにした ◦ アンカーフリーなモデルを採用し、ReID特徴量の 精度を向上
End-to-endへの挑戦 • Transformerを用いたEnd-to-endな手法が登場 ◦ DETRをベースにしたモデル ◦ DETRでは物体検出クエリを学習パラメタの一部としていた ◦ 物体検出クエリに前回フレームのトラッキング結果に紐付いたデコーダ出力(ト ラッククエリ)を加えることでフレーム間の情報を扱う
End-to-endへの挑戦 • Transformerを用いたEnd-to-endな手法が登場 ◦ DETRをベースにしたモデル ◦ DETRでは物体検出クエリを学習パラメタの一部としていた ◦ 物体検出クエリに前回フレームのトラッキング結果に紐付いたデコーダ出力(ト ラッククエリ)を加えることでフレーム間の情報を扱う
End-to-endへの挑戦 • TransTrack(2020) ◦ 物体検出用とトラッキング用の2つのTransformerデコーダを使用 ◦ 2つの出力を紐付ける用のネットワークを後段に用意 • TrackFormer(2021) ◦
Transformerデコーダを1つにして物体検出と紐付けを一体化 TransTrack TrackFormer
MOTガチンコ対決 in ECCV2022 MOTR • End-to-end • DETRベースのトラッキングモデ ル •
前回トラッククエリを引き継いで いくことにより、隣接する時刻だ けでない時間的モデリングを構 築 ByteTrack • Tracking by Detection • FairMOT作った人の最新論文 • MOT20でSOTA(2022/10月) • 物体検出:YOLOX • 次フレーム予測:カルマンフィル タ • ReID計算:UniTrack • Tracking by Detectionの検出 のしきい値による問題を克服
ByteTrack
ByteTrack • Tracking by Detectionの問題点 ◦ 検出の信頼度のしきい値に結果が左右されてしまう ◦ しきい値が高いと検出すべきものを見逃してしまう ◦
しきい値が低いとトラックレットと間違った紐付けを行ってしまう
ByteTrack • Tracking by Detectionの問題点を解決したBYTEというアルゴリズムを導入 ◦ 検出結果の信頼度が高いものと低いものを分けて両方うまく利用する トラックレット 1 トラックレット
2 トラックレット 3 トラックレット 4 検出結果1 信頼度0.9 検出結果2 信頼度0.2 検出結果3 信頼度0.7 検出結果5 信頼度0.1 検出結果4 信頼度0.9
ByteTrack • Tracking by Detectionの問題点を解決したBYTEというアルゴリズムを導入 ◦ 検出結果の信頼度が高いものと低いものを分けて両方うまく利用する トラックレット 1 トラックレット
2 トラックレット 3 トラックレット 4 検出結果1 信頼度0.9 検出結果2 信頼度0.2 検出結果3 信頼度0.7 検出結果5 信頼度0.1 まずは信頼度の高い 検出結果を使って紐 付け 類似度計算にIoUと ReIDを用いる 検出結果4 信頼度0.9 Tremain Dremain
ByteTrack • Tracking by Detectionの問題点を解決したBYTEというアルゴリズムを導入 ◦ 検出結果の信頼度が高いものと低いものを分けて両方うまく利用する トラックレット 1 トラックレット
2 トラックレット 3 トラックレット 4 検出結果1 信頼度0.9 検出結果2 信頼度0.2 検出結果3 信頼度0.7 検出結果5 信頼度0.1 検出結果4 信頼度0.9 次に紐付かなかった トラックレットと信頼度 の低い検出結果を紐 付け ここではIoUのみを類 似度計算に用いる Tre-remain Dremain
ByteTrack • Tracking by Detectionの問題点を解決したBYTEというアルゴリズムを導入 ◦ 検出結果の信頼度が高いものと低いものを分けて両方うまく利用する トラックレット 1 トラックレット
2 トラックレット 3 トラックレット 4 検出結果1 信頼度0.9 検出結果2 信頼度0.2 検出結果3 信頼度0.7 検出結果5 信頼度0.1 検出結果4 信頼度0.9 まだ残っているトラッ クレットはロストと見 なす 信頼度が高くて紐付 かなかった検出結果 は新たなトラックレット として登録する Tre-remain 新たなトラックレット
MOTR
MOTR • モデルはTrackFormerとかなり似た構成 • MOTRではQuery Interaction Module(QIM)というネットワークが追加されている TrackFormer MOTR
MOTRのQIMについて • QIMの入力はTransformerデコーダの出力と前回のトラッククエリ 物体検出 クエリ Transfor mer デコーダ 出力
MOTRのQIMについて • それぞれのクエリに対して検出の信頼度を用いてフィルタリング ◦ 物体検出クエリに対しては信頼度が高いものを新たなオブジェクトとする ◦ トラッククエリに対しては信頼度が低いものを退出したオブジェクトとする
MOTRのQIMについて • フィルタされたトラッククエリをTemporal Aggrigation Network(TAN)に通し、フィルタされ た物体検出クエリと結合 • TANでは前回のトラッククエリと今回のデコーダ出力を結合してMuti Head Attentionと
FFNに通す
全フレームでのLossの計算 • TrackFormerなどでは各フレーム毎のLossで学習していた • Collective Average Loss(CAL)を計算 ◦ 入力を動画として全フレームでのLossの平均をとる
実験と評価
MOTの主なデータセットと評価指標 • 主なデータセット ◦ MOT17 ◦ MOT20(より混雑したデータ) ◦ DanceTrack •
主な評価指標 ◦ MOTA ▪ FP、見逃し、IDスイッチに対する 評価の総合 ◦ HOTA ▪ 高次追跡精度 ◦ IDSW ▪ IDスイッチに対する評価 ◦ IDF1 ▪ ID毎のF1スコア
実験結果(MOT17)
実験結果(MOT17) • ByteTrackが全ての指標で勝利!
実験結果(DanceTrack)
実験結果(DanceTrack) • 5つの指標の中でMOTRが3勝!
MOTA-IDF1-FPSの比較(MOT17) MOTR
結果について • MOT17は歩行者がメインなので、検出性能の高さや見かけの類似性による紐付け 精度が重要となる • DanceTrackでは人の動きが入るため、MOTRはモーションも含めた時間的変化をよ り学習できていると言える • 歩行者の検出というシーンでの使い方だとByteTrackが圧倒的高精度
デモ動画 • MOTRの動画が見つからなかったのでByteTrackのみ
まとめ • 従来的なTracking by detectionの改良でSOTAを達成したByteTrackすごい! • とはいえ、Transformerの適用によってEnd-to-Endな手法の流れができてきている • 大きな動きがあっても特徴を掴めるという点においてEnd-to-endな手法の将来性を感じ る
• 参考)2022/10月時点での各データセットでのSOTA ◦ MOT17:BoT-SORT(2022)(ByteTrackは2位) ◦ MOT20:ByteTrack ◦ DanceTrack:OC-SORT(2022)(MOTRは2位)
参考資料 • MOT全般 ◦ Multiple Object Trackingの手法・ライブラリ紹介 ◦ Multiple-object tracking
(MOT) アルゴリズム研究の歴史 1 ◦ Multiple-object tracking (MOT) アルゴリズム研究の歴史 2 ◦ Multi-Object Trackingの精度評価指標 • ByteTrack ◦ https://github.com/ifzhang/ByteTrack ◦ ByteTrack : 低い確度のBoundingBoxも考慮するトラッキングモデル ◦ 【論文ざっくり紹介】ByteTrack ~単純なアルゴリズムで SOTAを達成(2021年12月時点)~ ◦ ByteTrackで対象のオブジェクトが障害物に隠れても正しいラベルでトラッキングするレシピ • SORT ◦ 現在のトラッキングモデルの基礎ともいえる SORT を解説! • DeepSORT ◦ 2017年に発表された DeepSORT を解説! ◦ DeepSort : 人物のトラッキングを行う機械学習モデル • Transformer ◦ https://www.slideshare.net/ArithmerInc/transformer-248613529 ◦ 機械学習エンジニアのための Transformers ◦ 牛久先生の動画 ◦ AIcia Solid Projectさんの動画 • DETR ◦ Transformerを使った初めての物体検出「 DETR」- 第1回 ◦ Transformerを使った初めての物体検出「 DETR」 - 第2回 ◦ 物体検出DETR (DEtection TRansformer) - Qiita • MOTR ◦ megvii-research/MOTR: [ECCV2022] MOTR: End-to-End Multiple-Object Tracking with TRansformer