semantic segmentation2
Post on 21-Jan-2018
3.421 Views
Preview:
TRANSCRIPT
Semantic Segmentationについてその2
2017年4月18日 皆川卓也
自己紹介
2
テクニカル・ソリューション・アーキテクト
皆川 卓也(みながわ たくや)フリーエンジニア(ビジョン&ITラボ)「コンピュータビジョン勉強会@関東」主催博士(工学)
略歴:1999-2003年日本HP(後にアジレント・テクノロジーへ分社)にて、ITエンジニアとしてシステム構築、プリセールス、プロジェクトマネジメント、サポート等の業務に従事
2004-2009年コンピュータビジョンを用いたシステム/アプリ/サービス開発等に従事
2007-2010年慶應義塾大学大学院後期博士課程にて、コンピュータビジョンを専攻単位取得退学後、博士号取得(2014年)
2009年-現在フリーランスとして、コンピュータビジョンのコンサル/研究/開発等に従事
http://visitlab.jp
Semantic Segmentationサーベイ2
この資料は以下のURLのサーベイの続きです。
https://www.slideshare.net/takmin/semantic-segmentation
主に以下の3点について調べました。
1. Cityscapes Benchmark上位のアルゴリズム
2. Instance-levelのSemantic Segmentation
3. Semantic Video Segmentation
予備知識
予備知識: Residual Networks
ネットワークに「バイパス」を設けることで、階層を深くしても学習が劣化しない仕組みを構築し、152層ものネットワークを構築
ILSVRC2015 (画像認識のコンペティション)で1位を獲得
He, K., Zhang, X., Ren, S., & Sun, J. (2016). Deep Residual Learning for Image Recognition. IEEE Conference on Computer Vision and Pattern Recognition (CVPR)
予備知識: Dilated Network
CNNではPooling層において、出力のサイズが入力サイズよりも小さくなってしまい、予測の解像度が低下する
Pooling層の代わりに、マルチスケールの「Dilated Convolution」を使用することで、解像度を保ったままコンテクストの情報を学習する。
Yu, F., & Koltun, V. (2016). Multi-Scale Context Aggregation by Dilated Convolutions. International Conference on Machine Learning (ICML)
画像は[http://sergeiturukin.com/2017/03/02/wavenet.html]より転載
予備知識:R-CNN (Region with CNN feature)
7
畳み込みニューラルネットワーク(CNN)は計算量が高いので、探索窓(Sliding Window)による検出は更に計算量高い
Selective Searchという手法を用いて物体候補領域を検出し、候補領域上のみ処理することで計算量削減
Girshick, R., Donahue, J., Darrell, T., & Malik, J. (2014). Rich feature hierarchies for accurate object detection and semantic segmentation. In IEEE Conference on Computer Vision and Pattern Recognition (CVPR).
予備知識:Fast R-CNN
8
R-CNNでは物体候補領域を1つ1つCNNで判別していたため遅い(VGGを使用した場合、GPU込みで1枚47秒)
画像全体にCNNをかけて特徴マップを生成し、最後のプーリング層を物体候補領域(ROI)に合わせて切り出す
R-CNNを検出時約213倍高速化
Girshick, R. (2015). Fast R-CNN. International Conference on Computer Vision (ICCV)
予備知識:Faster R-CNN
9
R-CNNおよびFast R-CNNではSelective Searchを用いて物体候補領域を事前に求めておく必要。
Fast R-CNNのSelective Search部分をfeature map上で行うことで、余計な処理を省き、高精度化/高速化(1枚当たり約200msec)。
→ Region Proposal Network (RPN)
この上(特徴マップ)で物体候補領域検出を行う
Ren, S., He, K., Girshick, R., & Sun, J. (2015). Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks. Advances in Neural Information Processing Systems (NIPS).
Cityscapes Benchmark
上位アルゴリズムについて
目的
本資料はSemantic Segmentationに関するデータセットおよびCompetitionであるCityscapes Benchmarksについて、その上位のアルゴリズムについて解説するものです。
ここで、解説されるアルゴリズムは論文が公開されているものに限ります。
Cityscapes Benchmarksの結果は以下のサイトから閲覧することができます。
https://www.cityscapes-dataset.com/benchmarks/
Cityscapes Benchmarks Cityscapesデータセットを用いて認識した結果をサーバーへアップロードすることで、それぞれの指標における順位を計算してくれます。
評価指標
Pixel Level
下記IoUおよびiIoUをクラス/カテゴリ(グループ)ごとに評価します。
IoU =𝑇𝑃
𝑇𝑃+𝐹𝑃+𝐹𝑁
TP, FP, FN: 画素ごとのTrue Positive, False Positive, False Negative
iIoU =𝑖𝑇𝑃
𝑖𝑇𝑃+𝑖𝐹𝑃+𝑖𝐹𝑁
iTP, iFP, iFN: クラスの平均サイズで重みづけしたTP, FP, FN
*2
評価指標
Instance Level
8種類のクラス(person, rider, car, truck, bus, train, motorcycle, bicycle)に対して、検出およびPixelラベリングの精度を評価します。
Average Precision
検出ラベルDとGround TruthラベルGのオーバーラップが閾値以上の時に正解とみなします。
𝐷 ∩ 𝐺
𝐷 ∪ 𝐺> 𝑡ℎ𝑟𝑒𝑠ℎ𝑜𝑙𝑑
閾値を0.5から0.05刻みで0.95まで動かし、Recall-Precisionカーブを作成します。
Recall-Precisionカーブの面積をAverage Precisionとします。
評価指標
Instance Level
mean Average Precision (AP)
全クラスのAverage Precisionの平均
AP 50%
オーバーラップ50%以上
AP 100m
100m以内のオブジェクトに対して
AP 50m
50m以内のオブジェクトに対して
Pixel Level上位の手法 (2017/03/11現在)
1. Z. Wu, C. Shen, A. Hengel, “Wider or Deeper: Revisiting the ResNetModel for Visual Recognition”, arXiv:1611.10080, 2016
2. H. Zhao, J. Shi, X. Qi, X. Wang, J. Jia, “Pyramid Scene Parsing Network”, arXiv:1612.01105, 2016
3. P. Wang, P. Chen, Y. Yuan, D. Liu, Z. Huang, X. Hou, G. Cottrel, “Understanding Convolution for Semantic Segmentation”, arXiv:1702.08502, 2017
Method IoU class iIoU class IoU category iIoU category
ResNet-38 *1 80.6 (1st) 57.8 (3rd) 91.0 (1st) 79.1 (2nd)
Model A2, 2 conv *178.4 (6th) 59.1 (1st) 90.9 (1st) 81.1 (1st)
PSPNet *2 80.2 (2nd) 58.1 (2nd) 90.6 (3rd) 78.2 (3rd)
TuSimple_Coarse *3 80.1 (3rd) 56.9 (4th) 90.7 (3rd) 77.8 (5th)
Revisiting RezNet Residual Networksの層の数を減らし、代わりに特徴マップ数(チャネル数)を増やすことで、構造を最適化ResNet-38とModel A2はともに、カスタマイズRezNetの一種(詳細は論文にも記述無し)
Semantic Segmentationタスク向けにFully Convolutional Networksに類似した構造へカスタマイズ
ソースコード: https://github.com/itijyou/ademxapp (MXNet)
PSPNet
ResNet+Dlilated Netで作成したFeature Mapに対し、異なるサイズのPoolingをかけてUp-samplingする
大きなPoolingサイズのものにコンテクストの情報が含まれている
ソースコード: https://github.com/hszhao/PSPNet (Caffe + DeepLab v2)
TuSimple_Coarse
訓練済みモデル(MXNet):https://goo.gl/DQMeun
ResNet+Dilated NetのDilated Netの部分をHybrid Dilated Convolution (HDC)という手法に置き換え、特徴抽出した結果をDense Upsampling Convolution (DUC) という手法でアップサンプリングHDC: Dilated Netのrate(サンプリング間隔)を階層ごとに変えることで、画素の「抜け」の問題を低減DUC: 特徴マップを、 L個(ラベル数)の原画像サイズの出力へ変換する畳み込み層
Instance Level上位の手法 (2017/03/11現在)
1. A. Arnab, & P. Torr, “Pixelwise Instance Segmentation with a Dynamically Instantiated Network”, IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2017.
Method AP AP 50% AP 100m AP 50m
Pixelwise Instance Segmentation with a Dynamically Instantiated Network*1
20.0 (1st) 38.8 (1st) 32.6 (1st) 37.6 (1st)
Dynamically Instantiated Network
物体検出の結果とSemantic Segmentationの結果をCRFで統合することで、Instanceを推定
Semantic SegmentationのネットワークとInstanceを求めるネットワークをend-to-endで学習可能(RNN as CRFを使用)
Instance-level Semantic Segmentation
Instance Level Semantic Segmentation Object Detection
画像の中から各カテゴリの1つ1つの物体位置を求める
Semantic Segmentation各画素がどのカテゴリに属するかを求める同じカテゴリの物体が隣接した場合、境界がわからない
Instance Segmentation各画素が1つ1つの物体のどこに属するかを求める
Arnab, A., & Torr, P. H. S. (2017). Pixelwise Instance Segmentation with a Dynamically Instantiated Network. IEEE Conference on Computer Vision and Pattern Recognition (CVPR).
アプローチによる分類
Object Detectionを用いてBounding Boxを算出し、その中および周辺画素の前景/背景を算出
最もメジャーなアプローチ
Object Detectionを物体候補領域推定(Region Proposal)を用いて行い、その領域情報を利用
Object Detectionを用いない方法
Segmentationベース
Patchベース
紹介する論文
Object Detectionを用いない方法の例
Zhang, Z., Fidler, S., & Urtasun, R. (2016). Instance-Level Segmentation with Deep Densely Connected MRFs. IEEE Conference on Computer Vision and Pattern Recognition (CVPR)
Segmentationベース
Liu, S., Qi, X., Shi, J., Zhang, H., & Jia, J. (2016). Multi-scale Patch Aggregation (MPA) for Simultaneous Detection and Segmentation. IEEE Conference on Computer Vision and Pattern Recognition (CVPR)
Patchベース
Deep Densely Connected MRFs 3種類のサイズのパッチからCNNで各画素のインスタンスのラベルを推定
平滑化項に近くの画素は同じインスタンス、離れた画素は異なるインスタンスの可能性が大きいという条件を入れて、MRFを用いて最終的なラベルを決定
ソースコード(C++, Caffe): https://bitbucket.org/zhangziyu1991/cnn-densecrf-kitti-public
Multi-scale Patch Aggregation
特徴マップからマルチスケールのパッチを切り出し、それぞれのパッチに対してSegmentationとClassificationを同時に行い、その後パッチの結果を統合
紹介する論文
Object Detectionを物体候補領域推定(Region Proposal)を用いて行い、その領域情報を利用
Hariharan, B., Arbeláez, P., Girshick, R., & Malik, J. (2014). Simultaneous Detection and Segmentation. European Conference on Computer Vision (ECCV)
Simultaneous Detection and Segmentation
(SDS)
物体検出とセグメンテーションを同時に行うようにR-CNNを改良
Bounding BoxとRegion上からそれぞれCNN特徴を抽出し、統合して線形SVMで物体カテゴリを識別。
各画素ブロックの前景/背景を判別する識別器(ロジスティック回帰)を「カテゴリごとに」学習(Region Refinement)
ソースコード(Matlab+Caffe): https://github.com/bharath272/sds_eccv2014
紹介する論文 Object Detectionを用いてBounding Boxを算出し、その中および周辺画素の前景/背景を算出Yang, Y., Hallman, S., Ramanan, D., & Fowlkes, C. C. (2012). Layered Object Models for Image Segmentation. IEEE Transaction on Pattern Analysis and Machine Intelligence (PAMI)Dai, J., He, K., & Sun, J. (2016). Instance-aware Semantic Segmentation via Multi-task Network Cascades. IEEE Conference on Computer Vision and Pattern Recognition (CVPR)Hariharan, B., Arbel, P., & Girshick, R. (2015). Hypercolumns for Object Segmentation and Fine-grained Localization. IEEE Conference on Computer Vision and Pattern Recognition (CVPR)Li, K., Hariharan, B., Malik, J., Berkeley, U. C., & Berkeley, U. C. (2016). Iterative Instance Segmentation. IEEE Conference on Computer Vision and Pattern Recognition (CVPR)Li, K., & Malik, J. (2016). Amodal Instance Segmentation. IEEE EuropianConference on Computer Vision (ECCV)He, K., Gkioxari, G., Dollar, P., & Girshick, R. (2017). Mask R-CNN. arXiv:1703.06870
Layered object models
物体検出(Deformable Part Model)の結果を基に、生成確率モデルを用いて、各Super Pixelの前後関係(層構造)を推定
Multi-task Network Cascades
物体候補領域算出(RPN)、前景推定、カテゴリ識別を行う3つのネットワークをカスケード型につないだ、end-to-endでの学習が可能なネットワークを構築
ソースコード(Python+Caffe): https://github.com/daijifeng001/MNC
Hypercolumns
CNNは上の層ほど識別能力が高い特徴が得られるが、空間周波数が下がるので、各層の特徴マップを束ねる(=Hypercolumns)ことで両方のメリットを取り入れて、Semantic Segmentationを行う。
物体検出で求めたBounding Box内の各画素のHypercolumnsを算出し、ロジスティック回帰で各グリッドのラベルを推定。
ソースコード (Python + Caffe):https://github.com/bharath272/sds
Iterative Instance Segmentation (IIS)
Semantic Segmentationを行うCNNを数珠つなぎにつなげ、前のCNNの予測結果を次のCNNへの入力とすることで、対象の形状についての事前分布を学習させる。
各CNN(Hypercolumnsを改良)は入力画像+前のネットワークの予測ラベルを受け取り、予測ラベルを返す。
Amodal Instance Segmentation
対象が見えている領域だけでなく、隠れている領域も推定するという新しい問題設定を提案。
Instance-level Semantic Segmentationの学習データに対
して、画像を合成して対象が隠れている学習データを新たに生成し、IISで学習。
Mask R-CNN
Faster R-CNNにセグメンテーション用のFully Convolutional NetworkをBounding Box推定用のネットワークと平行に加えるだけ
同じフレームワークで人の姿勢推定にも応用可能
MS COCO 2016 Challenge Winner
Semantic Video Segmentation
Semantic Video Segmentation
動画の各フレームに対し、Semantic Segmentationを行う。
その際、前後のフレームの情報などを利用することで、精度や速度を向上させる
Tripathi, S., Belongie, S., Hwang, Y., & Nguyen, T. (2015). Semantic video segmentation: Exploring inference efficiency. International SoC Design Conference (ISOCC) より画像転載
動画用データセット The Cambridge-driving Labeled Video Database(CamVid)
Dataset概要
32クラスにラベル付けされた車載カメラからの動画データセット。
動画は30Hz、ラベルは1Hz
URLhttp://mi.eng.cam.ac.uk/research/projects/VideoRec/CamVid/
ライセンス特に記述無
例
Playing for Data Richer, S. R., Vineet, V., Roth, S., & Koltun, V. (2016). Playing for Data: Ground Truth
from Computer Games. European Conference on Computer Vision (ECCV)
市販のゲームに対し、グラフィックハードウェアにアクセスすることで、高速にセマンティックラベルを取得CamVidの1/3のデータ+ゲームから取得したデータを使用して学習させることで、CamVid全てのデータを使って学習した場合よりも大幅に性能向上
URL (コードあり)https://download.visinf.tu-darmstadt.de/data/from_games/
アプローチによる分類
動画から推定した対象の三次元構造に基づいてラベル付け
フレームごとのラベル付け結果と三次元推定結果を融合
フレームごとのラベル付け結果を統合
複数フレーム全体を同時にラベル付け
紹介する論文
動画から推定した対象の三次元構造に基づいてラベル付け
G. J. Brostow, J. Shotton, J. Fauqueur, and R. Cipolla. Segmentation and recognition using structure from motion point clouds. In ECCV, 2008
Segmentation using SfM
Structure from Motionにより動画から三次元点群を計算
各点の高さ、カメラの軌跡との最短距離、法線ベクトル、再投影誤差等を特徴量として、Randomized Forestによりラベリング
紹介する論文
フレームごとのラベル付け結果と三次元推定結果を融合
Kundu, A., Li, Y., Daellert, F., Li, F., & Rehg, J. M. (2014). Joint Semantic Segmentation and 3D Reconstruction from Monocular Video. European Conference on Computer Vision (ECCV)
Joint Semantic Segmentation and 3D
Reconstruction
画像からのSemantic SegmentationとVisual SLAMによる
点群取得を個別に行い、それらを融合して3次元マップを作成
CRFを用いて各ボクセルのラベルを推定
紹介する論文
フレームごとのラベル付け結果を統合
Scharwaechter, T., Enzweiler, M., Franke, U., & Roth, S. (2014). Stixmantics: A Medium-Level Model for Real-Time Semantic Scene Understanding. European Conference on Computer Vision (ECCV)
Sevilla-Lara, L., Sun, D., Jampani, V., & Black, M. J. (2016). Optical Flow with Semantic Segmentation and Localized Layers. CVPR
Stixmantics
ステレオ視(Semi Global Matching)により、カメラからの距離に応じて棒状の領域(Stixel)に分割(上中)
Stixel毎にSemanticラベルを付与(上右)
特徴点の追跡結果(下右)を制約としてラベルを決定(下中)
リアルタイムでSemantic Segmentation可能
Optical Flow and Localized Layer
DeepLab(CNN + CRF)でSemantic Segmentation
Labelを車や人などの”Things”、道路や空などの”Planes”、ビルなどの” Stuff”に分け、それぞれの分類に応じてOptical Flowを改善。
改善したOptical Flow用いて、さらにSegmentation結果を改善
紹介する論文
複数フレーム全体を同時にラベル付け
Liu, B., & He, X. (2015). Multiclass semantic video segmentation with object-level active inference. IEEE Conference on Computer Vision and Pattern Recognition (CVPR)
Kundu, A., Tech, G., Vineet, V., Labs, I., Koltun, V., & Labs, I. (2016). Feature Space Optimization for Semantic Video Segmentation. 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR)
Object-level Active Inference
時空間方向に作成したSuper Voxelをノードとし、さらに物体検出/追跡結果(object hypothesis)を取り込んだモデルを、CRFを用いてSemantic Segmentation
Active Inferenceを用いて、最適なobject hypothesisのサブセットを選択することで計算を効率化
Future Space Optimization
複数フレームをまとめたブロックを構築し、画素同士の距離空間(特徴空間)を、画素の位置および値を元に構築
ブロック内の特徴空間において、各画素のラベルをfully-connected CRFで最適化
複数のブロックに渡って結果を最適化
ソースコード(C++): https://bitbucket.org/infinitei/videoparsing
top related