20161203 eccv2016 image matching
TRANSCRIPT
Learning Image Matching by Simply Watching Video
コンピュータビジョン勉強会@関東
ECCV2016論文読み会
2016年12月3日
この分野の専門家ではないので以降の内容に誤りが含まれる可能性があります
誤りや説明が不十分な点にお気づきの方からのご指摘、補足お待ちしております
おことわり
2016/12/3
1
コンピュータビジョン勉強会@関東
本日紹介する論文
2016/12/3 コンピュータビジョン勉強会@関東
2
特に断りのない場合、図は上記論文およびポスターより引用しています
Spotlight Session 4A: Feature Extraction & Matching
学習(CNN)ベースで動画のフレーム間の対応点マッチング
– 用途:structure from motion, オプティカルフロー, etc.
既存手法の問題:教師あり学習のアプローチはデータ整備のコストが大きい
“教師なし”で対応点マッチングのCNNを学習したい
やりたいこと
2016/12/3 コンピュータビジョン勉強会@関東
3
1. 動画の2フレームから中間フレームを補間するCNNを学習する
2. 補間画像から入力2フレームの対応点を推定する
ポイント
2016/12/3 コンピュータビジョン勉強会@関東
4
1. 動画の2フレームから中間フレームを補間するCNNを学習する
2. 補間画像から入力2フレームの対応点を推定する
2枚の画像の(密な)対応点が得られればフレーム補間は可能
フレーム補間CNNから対応点情報が得られるのでは?(Analysis by Synthesis)
動画の時間的連続性を仮定すると正解データはいくらでもある “Simply Watching Video”
ポイント
2016/12/3 コンピュータビジョン勉強会@関東
5
提案手法の全体像
2016/12/3
6
コンピュータビジョン勉強会@関東
MIND (Matching by INverting a Deep neural network)
なぜ補間画像から対応点が推定できるのか
2016/12/3
7
コンピュータビジョン勉強会@関東
補間画像は2枚の入力画像の画素値に何らかの重み付けして足し合わせたもの
補間画像のある画素と対応する入力画像の画素の影響度は最も高くなっているはず
補間画像のある画素に対する影響度は入力に対する勾配を求めればよい
バックプロパゲーションで算出可能
入力画像xに対して1層の畳み込みの場合
⇨𝑥1,1𝑤1,1 + 𝑥1,2𝑤1,2 +⋯+ 𝑥3,3𝑤3,3 = 𝑦1,1
𝑦1,1の位置に対する𝑥1,1の影響度は𝜕𝑦1,1
𝜕𝑥1,1= 𝑤1,1
実際には活性化関数(ReLUなど)をかけるのでもう少し複雑になる
単純な例で考えると
2016/12/3
8
コンピュータビジョン勉強会@関東
x5x5
w3x3
y3x3
補間画像生成ネットワーク
2016/12/3
9
コンピュータビジョン勉強会@関東
Input– 2枚の画像を結合した6 channel image
Conv Block– (3x3conv+pReLU)*3+max pool
Deconv Block– Conv Blockからpoolingを取り除いて
最初のconvを4x4 conv transに変更– 下位層からのバイパスはエッジなどを保存する狙い
Output– 入力の中間フレームを推定した画像
loss– Charbonnier loss 𝜌 𝑥 = 𝑠𝑞𝑟𝑡 𝑥2 + 𝜖2
– L2と比べて出力のボケが低減されるらしい
• データセット
– KITTI:車載カメラ映像
– MPI-Sintel:3Dアニメ映像
– ETH Multi-Person Tracking
– Bonn Benchmark on Tracking
• 評価観点
– 定性的評価
フレーム補間:補間画像の見た目の綺麗さ、学習済みネットワークの汎用性
対応点マッチング:対応点の見た目の確からしさ
– 定量的評価
対応点マッチング:正解との誤差、正解率
評価実験
2016/12/3
10
コンピュータビジョン勉強会@関東
オプティカルフローのベンチマークデータセット
トラッキングのベンチマークデータセット
定性的評価:フレーム補間は概ね良好
2016/12/3
11
コンピュータビジョン勉強会@関東
特に右2つは別の映像で学習したネットワークで補間しているので学習データに出現する物体の特徴を学習しているわけではないことが確認できる
フレーム補間としてはstate-of-the-artではないが本質ではないので他との比較は割愛
上段:2フレームを重ねた画像、下段:補間画像
定性的評価:補間できれば正しい対応点が得られる
2016/12/3
12
コンピュータビジョン勉強会@関東
動きが大きく補間画像がブレている箇所でも対応は正しく取れている
定性的評価:補間が完璧でなくても対応は得られる
2016/12/3
13
コンピュータビジョン勉強会@関東
定性的評価:補間を大きく誤ると当然対応点も誤る
2016/12/3
14
コンピュータビジョン勉強会@関東
移動量が大きく、非剛体変形が大きいと難しい
定量的評価:教師ありには劣るがhand-craftは上回る精度
2016/12/3
15
コンピュータビジョン勉強会@関東
APE: 平均ズレ量Accuracy@T: 誤差Tピクセル以内の割合
KITTI MPI-Sintel
• 384x128の画像から4pixel間隔で対応点を求めると約8分かかる計算動画から対応点を算出しようとするとこれがフレーム数分
– forward: 40ms / image
– backward: 158ms / point
提案手法の限界:処理速度が致命的に遅い
2016/12/3
16
コンピュータビジョン勉強会@関東
教師なしで動画のフレーム間の対応点マッチングを行うCNNを学習
– 教師なしでフレーム補間を行うCNNを学習(動画の連続性を利用)
– 補間画像からバックプロパゲーションすることで入力画像の対応点を求める
興味を持った点
– 条件を揃えることで教師なしで特定タスク向けのCNNを学習している
– 直接学習せずに関連するタスク向けのCNNを活用して問題を解いている
まとめ
2016/12/3
17
コンピュータビジョン勉強会@関東
汎化能力
2016/12/3
18
コンピュータビジョン勉強会@関東
一般的な動画だけでなく医療用画像 (DICOM)にも適用可能
2016/12/3
19
コンピュータビジョン勉強会@関東
KITTI MPI-Sintel
バックプロパゲーションによる対応点の算出を数式にすると
2016/12/3
20
コンピュータビジョン勉強会@関東
• CNNを関数ℱで表すと
• 関数ℱの入力画像に対する勾配を求めると
• 補間画像の画素(𝑖, 𝑗)への影響度はℊで求まる
• ℊが最大となる位置が対応点の座標