7-1.画像認識分野
1.アレックスネット(AlexNet)
2012年 ILSVRCにて優勝
ILSVRC ご認識率の変化
2012 AlexNet 0.16
2013 ZF.net 0.12
2014 GoogLeNetVGG 0.07
2015 ResNet 0.036
2016 ensembled network 0.30
2017 Squeeze and ExcitationNetwork 0.023
2.R-CNN
イメージネット画像認識コンテストには
・位置課題(location task)
・検出課題(detection task)
二つの課題がある。
どこに何があるかを問う課題
この課題に対応するのが
●R-CNN(Regional CNN)
関心領域(Region of Interest:ROI)の切り出しには
従来手法を用いる、切り出しの後に領域ごとに個別にCNNを呼び出す2段階モデルであるため時間がかかっていた。
・領域の切り出し とは
画像上の矩形領域(長方形)の左上の座標と右下の座標で表現することにすれば、
4つの点を予測する回帰問題と見なすことができる
この矩形領域の事を「バンディングボックス(bounding box)」と呼ぶ
一般にCNNでは、畳み込み演算を多層にして繰り返す
このため、各層の個々のニューロンはカーネルの大きさ分だけしか下位層から入力を受け取らない。
このためCNNは入力画像中の位置情報も表現していると考えることができる
各入力画像の関心領域を切り出すための情報が含まれている
アレックスネットに限ったことではない
領域の切り出しと切り出した領域の物体認識を同時に行うことが可能となる
これを実現したモデルを「高速RCNN(fastRCNN)」と呼ぶ
●fastRCNN
領域切り出しと物体認識を同時に行うモデル
●fasterRCNN
上記をさらに改良したモデル
これらのモデルによりほぼ実時間で入力画像から関心領域の切り出しと認識ができるようになりました。
・ほぼ実時間:一秒あたり16フレーム程度の処理
このことで、動画認識へCNNを応用する道が開かれた
●その後の発展系
・YOLO
You Only Look Once(一度だけしか見ない)
・SSD
Single Shot Detector(1ショット検出器)
これらはいずれも領域切り出しと認識を同時に行うCNN
3.セマンティックセグメンテーションとインスタンスセグメンテーション
●セマンティックセグメンテーション(semantic segmentation)
R-CNNのような矩形領域を切り出すのではなく、
より詳細な領域分割を得るモデル
物体認識においては領域分割を詳細に行うことが必要となります。
入力画像のどの位置に物体が存在するのかを画素単位で指定することができれば認識精度も向上すると予想されます。
●完全畳み込みネットワーク
Fully Convolutional Network:FCN
セマンティックセグメンテーションを実現するネットワーク
全ての層がたたみ込みそうであるモデル
通常のCNN
出力層のユニット数が識別すべきカテゴリー数
FCN
入力画像の画素数だけ出力層が必要
→各画素がそれぞれどのカテゴリーに属するのかを出力する必要がある
出力層には、縦画素数×横画素数×カテゴリー数
の出力ニューロンが用意されます
識別すべきカテゴリー数が20だった場合、背景はどのカテゴリーにも属さないので、背景を1カテゴリとして加えた21カテゴリーの分類を行う
CNNでは畳み込み演算によって
畳み込みのカーネル幅(受容野)だけが近傍の入力刺激そ加えて計算することになる
→上位層では下位層に比べて受容野が大きくなり画像サイズは小さくなる
最終出力層に入力層と同じ解像度画素数を得るためには、畳み込みと
反対方向の解像度を細かくする工夫が必要となります。
●解決策
アンサンプリング(unsampling)
下位のプーリング層の情報を用いて詳細な解像度を得ることができます。
下位層のプーリング情報を使ってアンサンプリングする事により、解像度を復元する
同様の仕組み
・セグネット(segnet)
下位のプーリング層の情報を用いて領域分けを行う
【まとめ】
バウンディングボックスは矩形領域を切り出して、切り出した領域内の物体識別を行う。
セマンティックセグメンテーションは、各画素がどのカテゴリーに属するかを求める手法→同じカテゴリーに属する物体が同一ラベルとして扱われる
インスタンスセグメンテーションでは、個々の物体ごとに認識させる事ができる
MaskRCNN
バウンディングボックスとセマンティックセグメンテーションを組み合わせる事で
入力画像では遮蔽物によって隠されて不連続になった物体を同一の物として認識できる可能性がある