10. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
物体検出の流れのキホン
10
STEP 1 STEP 2
検出対象となる物体が画像中
のどこにありそうか探索する
検出した物体が具体的に何で
あるかを画像分類する
11. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
物体検出の流れのキホン
11
STEP 1
検出対象となる物体が画像中
のどこにありそうか探索する
12. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
物体検出の流れのキホン
12
STEP 2
検出した物体が具体的に何
であるかを画像分類する
分類器
person
cat
pig
分類結果の出力
bike
car
train
分類結果の出力
14. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
物体検出アルゴリズム
• 多くのアルゴリズムが提案されている
14[引用] https://github.com/hoya012/deep_learning_object_detection
15. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
物体検出アルゴリズム
• 多くのアルゴリズムが提案されている
15[引用] https://github.com/hoya012/deep_learning_object_detection
HOG+SVM
16. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
これから紹介する手法
16
分析者による特徴量生成(Hand-craft)
HOG特徴量+SVM
CNN導入の始まり(two-stage)
R-CNN, Fast R-CNN, Faster R-CNN
One-shotによる高速物体検出(one-stage)
YOLO, SSD
17. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
これから紹介する手法
17
分析者による特徴量生成(Hand-craft)
HOG特徴量+SVM
CNN導入の始まり(two-stage)
R-CNN, Fast R-CNN, Faster R-CNN
One-shotによる高速物体検出(one-stage)
YOLO, SSD
18. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
HOG+SVM
18
• 2005年に提案された当時のstate-of-the-art
領域候補 特徴抽出 画像分類 出力調整
19. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
HOG+SVM
19
• Sliding Window等で物体候補を算出
領域候補 特徴抽出 画像分類 出力調整
Input
Sliding window
窓を左から右へスライド
画像を全探索する
[引用] N. Dalal and B. Triggs. Histograms of oriented gradients for human detection. In CVPR, 2005.
20. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
HOG+SVM
20
• Sliding Window等で物体候補を算出
領域候補 特徴抽出 画像分類 出力調整
Input
Sliding window
窓を左から右へスライド
画像を全探索する
BING
(Binarized Normed Gradients)
検出した多すぎる窓の中から
物体っぽいもののみに絞る
[引用] N. Dalal and B. Triggs. Histograms of oriented gradients for human detection. In CVPR, 2005.
21. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
HOG+SVM
21
• 候補となった画像を切り出し、HOG特徴量を算出
領域候補 特徴抽出 画像分類 出力調整
検出した窓毎にHOG特徴量を抽出
HOG
(Histgram of Oriented Gradient)
輝度勾配を用いた特徴量
物体の大まかな形状を表現す
ることが可能
[引用] N. Dalal and B. Triggs. Histograms of oriented gradients for human detection. In CVPR, 2005.
22. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
HOG+SVM
22
• 候補となった画像を切り出し、HOG特徴量を算出
領域候補 特徴抽出 画像分類 出力調整
検出した窓毎にHOG特徴量を抽出
HOG
(Histgram of Oriented Gradient)
輝度勾配を用いた特徴量
物体の大まかな形状を表現す
ることが可能
[引用] N. Dalal and B. Triggs. Histograms of oriented gradients for human detection. In CVPR, 2005.
23. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
HOG+SVM
23
• HOG特徴量をinputとし、SVMで画像を分類
領域候補 特徴抽出 画像分類 出力調整
各窓毎に
SVMで分類
人
人
人
でない
人
でない
input output
[引用] N. Dalal and B. Triggs. Histograms of oriented gradients for human detection. In CVPR, 2005.
24. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
HOG+SVM
24
• NMSで、よりスコアの高いbboxに絞り込む
領域候補 特徴抽出 画像分類 出力調整
同じオブジェクトに複数のbboxが付与
重なりが閾値以上だったものが対象となる
[引用] N. Dalal and B. Triggs. Histograms of oriented gradients for human detection. In CVPR, 2005.
1つの窓に絞る
25. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
HOG+SVM
25
• NMSで、よりスコアの高いbboxに絞り込む
領域候補 特徴抽出 画像分類 出力調整
同じオブジェクトに複数のbboxが付与 Non-Maximal Suppressionにて抑制
0.95
0.89
0.95
分類器による
判定スコア
重なりが閾値以上だったものが対象となる
[引用] N. Dalal and B. Triggs. Histograms of oriented gradients for human detection. In CVPR, 2005.
26. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
これから紹介する手法
26
分析者による特徴量生成(Hand-craft)
HOG特徴量+SVM
CNN導入の始まり(two-stage)
R-CNN, Fast R-CNN, Faster R-CNN
One-shotによる高速物体検出(one-stage)
YOLO, SSD
27. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
R-CNNシリーズ
27
HOG R-CNN
Fast
R-CNN
Faster
R-CNN
領域候補 Sliding Window
Selective
Search
Selective
Search
Region Proposal
Network
特徴抽出 HOG CNN CNN CNN
画像分類 SVM SVM モデルに内包 モデルに内包
その他 - bboxの補正
bboxの補正も
モデルに内包
bboxの補正も
モデルに内包
要約
画像分類にCNN導入
遅い…
CNNの使い方を改良
結構早くなる
領域候補もDLで!
更に早くなる
28. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
R-CNN(Regions with CNN features)
28
• 物体検出にCNNを持ち込んだ先駆け
HOG R-CNN
領域候補
Sliding
Window
Selective
Search
特徴抽出 HOG CNN
画像分類 SVM SVM
その他 - bboxの補正
表 HOGとの主な違い
[引用] R. Girshick, J. Donahue, T. Darrell, and J. Malik. Rich feature hierarchies for accurate object
detection and semantic segmentation. In CVPR, 2014.
29. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
R-CNN(Regions with CNN features)
29
• 物体検出にCNNを持ち込んだ先駆け
HOG R-CNN
領域候補
Sliding
Window
Selective
Search
特徴抽出 HOG CNN
画像分類 SVM SVM
その他 - bboxの補正
表 HOGとの主な違い
アルゴリズムの流れ
1.領域候補をSelective Searchで検出
2.検出した画像をリサイズし、CNNで特徴抽出
3.CNN特徴を入力とし、SVMで分類
4.bboxを回帰モデルで補正
[引用] R. Girshick, J. Donahue, T. Darrell, and J. Malik. Rich feature hierarchies for accurate object detection and semantic
segmentation. In CVPR, 2014.
30. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
30
R-CNN(Regions with CNN features)
• Selective Searchにより領域候補の削減
– 段階的に類似画素を結合し、物体っぽいものを検出
– 総当たりで抽出するSliding Windowより検出候補を絞れる
• R-CNNでは検出画像毎にCNNの計算をする為、検出窓が多い=計算時間が増大
[引用] J. R. Uijlings, K. E. van de Sande, T. Gevers, and A. W. Smeulders. Selective search for object recognition. IJCV, 2013.
31. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
31
R-CNN(Regions with CNN features)
• Selective Searchにより領域候補の削減
– 段階的に類似画素を結合し、物体っぽいものを検出
– 総当たりで抽出するSliding Windowより検出候補を絞れる
• R-CNNでは検出画像毎にCNNの計算をする為、検出窓が多い=計算時間が増大
[引用] J. R. Uijlings, K. E. van de Sande, T. Gevers, and A. W. Smeulders. Selective search for object recognition. IJCV, 2013.
段々領域が多くなっている
32. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
転移学習
32
• 別の領域で学んだ知見を他の領域で使いまわすこと
– DL文脈:学習済みモデルを有効活用しよう!
• 限られた教師データで精度が高いモデルを作る試み
よく使われる学習済みモデル
- VGGNet
- ResNet
※ImageNetと呼ばれるデータセットで学習
33. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
転移学習/特徴量抽出器
33
• 別の領域で学んだ知見を他の領域で使いまわすこと
– DL文脈:学習済みモデルを有効活用しよう!
• 限られた教師データで精度が高いモデルを作る試み
e.g) 学習済みVGGNet
ここでcutする
34. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
転移学習/特徴量抽出器
34
• 別の領域で学んだ知見を他の領域で使いまわすこと
– DL文脈:学習済みモデルを有効活用しよう!
• 限られた教師データで精度が高いモデルを作る試み
e.g) 学習済みVGGNet
ここでcutする
特
徴
ベ
ク
ト
ル
識別器
(SVM等)
パラメータはfreeze(固定させる)
=学習で得られた特徴量の抽出方法を流用
35. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
転移学習/Fine Tuning
35
• 別の領域で学んだ知見を他の領域で使いまわすこと
– DL文脈:学習済みモデルを有効活用しよう!
• 限られた教師データで精度が高いモデルを作る試み
e.g) 学習済みVGGNet
全
結
合
全
結
合
全
結
合
出
力
新しいデータで学習し直す
ここでcutする
36. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
R-CNNの欠点
36
▼遅い。。。
CNN検出窓
…
…
検出した画像毎にCNNを使って特徴量抽出を行うが、
CNNの計算コストが高い為、検出窓数に伴い計算量が増大
37. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
R-CNNの欠点
37
▼遅い。。。 ▼学習が複雑
それぞれ別々のアルゴリズムの為、別々に学習する必要がある
特徴量抽出の為にCNNを学習
※実際には学習済みモデルをFine Tuning
画像分類用にSVMを学習
bbox補正用にLinear Regressionを学習
CNN検出窓
…
…
検出した画像毎にCNNを使って特徴量抽出を行うが、
CNNの計算コストが高い為、検出窓数に伴い計算量が増大
38. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
Fast R-CNN
38
R-CNN
Fast
R-CNN
領域候補
Selective
Search
Selective
Search
特徴抽出 CNN CNN
画像分類 SVM
モデルに
内包
その他 bboxの補正
bboxの補正
も、モデル
に内包
• R-CNNの改良版。213倍の識別速度に
表 R-CNNとの主な違い
[引用] R. Girshick. Fast R-CNN. arXiv:1504.08083, 2015.
39. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
Fast R-CNN
39
R-CNN
Fast
R-CNN
領域候補
Selective
Search
Selective
Search
特徴抽出 CNN CNN
画像分類 SVM
モデルに
内包
その他 bboxの補正
bboxの補正
も、モデル
に内包
• R-CNNの改良版。213倍の識別速度に
表 R-CNNとの主な違い
[引用] R. Girshick. Fast R-CNN. arXiv:1504.08083, 2015.
アルゴリズムの流れ
1.画像を入力としてCNNを使い、feature mapを生成
2.Selective Searchの結果をfeature mapに射影
3.各領域候補からRoI poolingとFC層を用い特徴量を抽出
4.特徴量を元に分類結果とbboxの位置を同時に予測
40. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
Fast R-CNNは何故R-CNNより高速?
40
▼R-CNN
CNN検出窓
…
…
検出した画像毎にCNNを使って特徴量抽出を行うが、
CNNの計算コストが高い為、検出窓数に伴い計算量が増大
41. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
Fast R-CNNは何故R-CNNより高速?
41
▼R-CNN
CNN検出窓
…
…
検出した画像毎にCNNを使って特徴量抽出を行うが、
CNNの計算コストが高い為、検出窓数に伴い計算量が増大
▼Fast R-CNN
CNN
feature mapに
領域候補を写像
Rol pooling
+ FC
Rol pooling
+ FC
先に入力画像に対し、CNNでfeature mapを作る。
これにより、複数の領域候補があってもCNNの計算は1回で済む
42. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
Fast R-CNNの特徴①
42
• RoI(Region of Interest) pooling
– 領域候補の写像のままだと、窓のサイズが可変であり不都合
– 領域候補をN×Nに分割し、位置を保存したまま固定長の出力を得る
Feature map(10×15)
領域候補
24次元
48次元
43. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
Fast R-CNNの特徴①
43
• RoI(Region of Interest) pooling
– 領域候補の写像のままだと、窓のサイズが可変であり不都合
– 領域候補をN×Nに分割し、位置を保存したまま固定長の出力を得る
Feature map(10×15)
領域候補
24次元
48次元
Feature map(10×15)
ここでは
2×2分割
ともに
4次元
44. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
Fast R-CNNの特徴①
44
• RoI(Region of Interest) pooling
– 領域候補の写像のままだと、窓のサイズが可変であり不都合
– 領域候補をN×Nに分割し、位置を保存したまま固定長の出力を得る
Feature map(10×15)
RoI poolingの対象領域 この領域内でMax pooling
80 80左上領域の
最大値は80
領域候補のサイズに依
存せずに、分割数に応
じた固定の出力を得る
ことができる。
論文では7×7である。
2×2の出力が得られる
45. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
Fast R-CNNの特徴②
45
• Multi-task Loss
– 誤差関数にカテゴリ分類誤差とbboxの回帰
誤差が含まれる
– 画像から特徴を抽出し、分類し、bboxを出
力するまでが1つのニューラルネットワーク
で可能に。
[引用] R. Girshick. Fast R-CNN. arXiv:1504.08083, 2015.
46. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
Fast R-CNNの特徴②
46
• Multi-task Loss
– 誤差関数にカテゴリ分類誤差とbboxの回帰
誤差が含まれる
– 画像から特徴を抽出し、分類し、bboxを出
力するまでが1つのニューラルネットワーク
で可能に。
• 一方で…
– 領域候補はSelective Search
– ↑が精度/速度のボトルネックに
[引用] R. Girshick. Fast R-CNN. arXiv:1504.08083, 2015.
47. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
Faster R-CNN
47
• 真のend-to-endモデル
Fast
R-CNN
Faster
R-CNN
領域候補
Selective
Search
Region
Proposal
Network
特徴抽出 CNN CNN
画像分類
モデルに
内包
モデルに
内包
その他
bboxの補正
も、モデル
に内包
bboxの補正
も、モデル
に内包
[引用] S. Ren, K. He, R. Girshick, and J. Sun. Faster R-CNN: Towards real-time object detection with region proposal networks. In NIPS, 2015.
表 Fast R-CNNとの主な違い
領域候補の検出まで
アルゴリズムに含ま
れた為、物体検出に
おける工程が全て1
つのモデルで完結し
たことになる
48. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
Faster R-CNNの特徴
48
• Region Proposal Network
– 領域候補の検出までをニューラルネットワークで実現
– feature map上でk個のanchorを使いsliding windowし、物体が写っ
ているか否か(cls layer)とbboxの位置(reg layer)の2つを出力
▼従来手法
- オリジナル画像に対して走査
▼本手法
- feature mapに対して走査
CNNで生成したfeature map
49. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
Faster R-CNNの特徴
49
• Region Proposal Network
– 領域候補の検出までをニューラルネットワークで実現
– feature map上でk個のanchorを使いsliding windowし、物体が写っ
ているか否か(cls layer)とbboxの位置(reg layer)の2つを出力
[引用] S. Ren, K. He, R. Girshick, and J. Sun. Faster R-CNN: Towards real-time object detection with region proposal networks. In NIPS, 2015.
bboxの大きさは認識対象の物体に依存する傾向
その為、Faster R-CNNではアンカーと呼ばれ
るwindowのひな形を用いる
×
スケール3種 アスペクト比3種
= 9種類のアンカーボックス
50. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
Faster R-CNNの特徴
50
• Region Proposal Network
– 領域候補の検出までをニューラルネットワークで実現
– feature map上でk個のanchorを使いsliding windowし、物体が写っ
ているか否か(cls layer)とbboxの位置(reg layer)の2つを出力
[引用] S. Ren, K. He, R. Girshick, and J. Sun. Faster R-CNN: Towards real-time object detection with region proposal networks. In NIPS, 2015.
bboxの大きさは認識対象の物体に依存する傾向
その為、Faster R-CNNではアンカーと呼ばれ
るwindowのひな形を用いる
×
スケール3種 アスペクト比3種
Feature map
を1pixelずつず
らしながらk個
のanchor box
を検証する
51. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
これから紹介する手法
51
分析者による特徴量生成(Hand-craft)
HOG特徴量+SVM
CNN導入の始まり(two-stage)
R-CNN, Fast R-CNN, Faster R-CNN
One-shotによる高速物体検出(one-stage)
YOLO, SSD
52. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
YOLO(You only Look Once)
52
• 高速な物体検出アルゴリズムその1
– 領域候補を回帰問題として解く
[引用] Redmon, J., Divvala, S., Girshick, R., Farhadi, A.: You only look once: unified, real-time object detection. In: CVPR (2016)
https://www.pyimagesearch.com/2018/11/12/yolo-object-detection-with-opencv/
53. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
YOLO(You only Look Once)
53
• 高速な物体検出アルゴリズムその1
– 領域候補を回帰問題として解く
速度
精度
[引用] Redmon, J., Divvala, S., Girshick, R., Farhadi, A.: You only look once: unified, real-time object detection. In: CVPR (2016)
https://www.pyimagesearch.com/2018/11/12/yolo-object-detection-with-opencv/
>>
54. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
YOLOの特徴
54
• グリッド毎にクラス確率予測とbbox回帰予測を同時に
– 各bboxは(物体クラス確率×bbox信頼度)でスコア付け
55. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
YOLOの特徴
55
• グリッド毎にクラス確率予測とbbox回帰予測を同時に
– 各bboxは(物体クラス確率×bbox信頼度)でスコア付け
[引用] Redmon, J., Divvala, S., Girshick, R., Farhadi, A.: You only look once: unified, real-time object detection. In: CVPR (2016)
▼物体の種類の予測
グリッド毎にどんな物体が写って
いるのかのクラスを予測する
Dog
Dining Table
Bicycle
Car
56. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
YOLOの特徴
56
• グリッド毎にクラス確率予測とbbox回帰予測を同時に
– 各bboxは(物体クラス確率×bbox信頼度)でスコア付け
[引用] Redmon, J., Divvala, S., Girshick, R., Farhadi, A.: You only look once: unified, real-time object detection. In: CVPR (2016)
▼物体の種類の予測
グリッド毎にどんな物体が写って
いるのかのクラスを予測する
Dog
Dining Table
Bicycle
Car
▼bboxの位置の予測
予測1:bbox
予測2:bbox
グリッド毎に物体が写っていそう
なbboxの位置を予測する
※論文では1grid cell当たり2bboxを予測
57. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
SSD(Single Shot Multibox Detector)
57
• 高速な物体検出アルゴリズムその2
[引用] W. Liu, D. Anguelov, D. Erhan, C. Szegedy, and S. E. Reed. SSD: single shot multibox detector. CoRR, abs/1512.02325, 2015.
① ②
③
④ ⑤
⑥
SSD300では6枚のfeature map
を使い、矩形の位置予測とクラ
ス分類を行う
58. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
SSD(Single Shot Multibox Detector)
58
• 高速な物体検出アルゴリズムその2
[引用] W. Liu, D. Anguelov, D. Erhan, C. Szegedy, and S. E. Reed. SSD: single shot multibox detector. CoRR, abs/1512.02325, 2015.
① ②
③
④ ⑤
⑥
SSD300では6枚のfeature map
を使い、矩形の位置予測とクラ
ス分類を行う
59. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
SSD(Single Shot Multibox Detector)
59
• 高速な物体検出アルゴリズムその2
[引用] W. Liu, D. Anguelov, D. Erhan, C. Szegedy, and S. E. Reed. SSD: single shot multibox detector. CoRR, abs/1512.02325, 2015.
YOLOと
張り合う。
精度は上
① ②
③
④ ⑤
⑥
SSD300では6枚のfeature map
を使い、矩形の位置予測とクラ
ス分類を行う
60. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
SSDの特徴
60
• Default Boxes
– 各feature mapでは4もしくは6つのanchorを使い、矩形を検証
[引用] W. Liu, D. Anguelov, D. Erhan, C. Szegedy, and S. E. Reed. SSD: single shot multibox detector. CoRR, abs/1512.02325, 2015.
https://avinton.com/blog/2018/03/single-shot-multibox-detector-explained1/
複数のfeature mapを使うことでマルチスケール
pixel毎にアンカーを使うことでアスペクト比に対応
61. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
SSDの特徴
61
• Default Boxes
– 各feature mapでは4もしくは6つのanchorを使い、矩形を検証
[引用] W. Liu, D. Anguelov, D. Erhan, C. Szegedy, and S. E. Reed. SSD: single shot multibox detector. CoRR, abs/1512.02325, 2015.
https://avinton.com/blog/2018/03/single-shot-multibox-detector-explained1/
複数のfeature mapを使うことでマルチスケール
pixel毎にアンカーを使うことでアスペクト比に対応
結果として8732枚のbboxを検証
1. conv4_3(38*38*4) = 5776 box
2. conv7(19*19*6) = 2166 box
3. conv8_2(10*10*6) = 600 box
4. conv9_2(5*5*6) = 150 box
5. conv10_2(3*3*4) = 36 box
6. conv11_2(1*1*4) = 4 box
62. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
YOLOv2 & YOLOv3
62
▼YOLO v2 ▼YOLO v3
[引用] J. Redmon and A. Farhadi. YOLO9000: Better, faster, stronger. In CVPR, 2017.
特に”見逃し”を改善に注力
主に下記事項について修正
1. アンカーの導入
2. ネットワークの改善
3. 学習方法の改善
ネットワークを深くし、精度改善に注力
主に下記事項について修正
1. 深いネットワーク構造の導入
2. 3つのfeature mapと3つのアンカー
3. softmaxをsigmoidへ
[引用] J. Redmon and A. Farhadi. Yolov3: An incremental improvement. arXiv preprint arXiv:1804.02767, 2018.
https://qiita.com/cyberailab/items/850806c08af08853bac8
各グリッドに対して3つのfeature map
と3つのアンカーを使い結果を予測
67. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
物体検出における評価尺度
67
• 推論速度
– sec/img
– FPS(Frames per Second)
• 1秒あたりに処理できる画像枚数
68. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
物体検出における評価尺度
68
• 推論速度
– sec/img
– FPS(Frames per Second)
• 1秒あたりに処理できる画像枚数
• 認識精度
– IoU(Intersection over Union)
• どのくらい正解と予測が重なっているか
– MAP(Mean Average Precision)
• 平均してどのくらい適合できていたか
– F値(F-measure)
• 正確性と網羅性を加味してバランスよく検出できているか
69. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
IoU(Intersection over Union)
69
【特徴1】 1が最も良く、0が最も悪い
𝐼𝐼𝐼𝐼 𝐼𝐼 =
𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼
𝑈𝑈𝑈𝑈𝑈𝑈𝑈𝑈𝑈𝑈
予測領域
正解領域
(Ground Truth)
分子は予測と正解領域の
積集合(Intersection)
を表し、分母は予測と正
解領域の和集合
(Union)となる
70. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
IoU(Intersection over Union)
70
【特徴1】 1が最も良く、0が最も悪い
𝐼𝐼𝐼𝐼 𝐼𝐼 =
𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼
𝑈𝑈𝑈𝑈𝑈𝑈𝑈𝑈𝑈𝑈
予測領域
正解領域
(Ground Truth)
分子は予測と正解領域の
積集合(Intersection)
を表し、分母は予測と正
解領域の和集合
(Union)となる
【特徴2】 IoUはズレに厳しい
悪い 良い
[引用] https://apple.github.io/turicreate/docs/userguide/object_detection/advanced-
usage.html
IoUが0.5でもかなり予測領域が正解領域と
重複している必要がある
71. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
MAP(Mean Average Precision)
71
▼1classにおけるAPの算出方法
Rank Correct? Confidence
1 0.87
2 0.84
3 0.71
4 0.67
5 0.55
確信度順に予測結
果を並べる
72. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
MAP(Mean Average Precision)
72
▼1classにおけるAPの算出方法
Rank Correct? Confidence
1 True 0.87
2 False 0.84
3 True 0.71
4 True 0.67
5 False 0.55
IoUが0.5以上の時にTrue
73. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
MAP(Mean Average Precision)
73
▼1classにおけるAPの算出方法
Precision
1
1
2
3
3
4
Rank Correct? Confidence
1 True 0.87
2 False 0.84
3 True 0.71
4 True 0.67
5 False 0.55
n番目の予測までに
いくつ正解したか?
を算出する
81. Tellus Trainer
Copyright 2019 SAKURA Internet Inc. All rights reserved.
最新のアルゴリズム別の精度
81
[引用] Q. Zhao, T. Sheng, Y. Wang, Z. Tang, Y. Chen, L. Cai, and H. Ling. M2det:
A single-shot object detector based on multi-level feature pyramid network.
In Thirty-Third AAAI Conference on Artificial Intelligence, 2019
推論速度と
予測精度は
トレードオフ